当前位置: 首页 > 面试题库 >

Android:ScrollView不能在没有键盘的情况下滚动

汝志
2023-03-14
问题内容

我有一个带有一些视图的布局,其中一个是EditText。布局很容易放在一页上,但当软键盘退出时,布局不会滚动。这是我的布局的回顾:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/background" >

    <ScrollView
        android:id="@+id/ScrollView1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical" >

            <CheckBox/>

            <TextView/>

            <LinearLayout>
                <EditText>
                    <requestFocus />
                </EditText>
            </LinearLayout>

            <TextView/>

            <LinearLayout>
                <Spinner/>
            </LinearLayout>

        </LinearLayout>

    </ScrollView>

    <Button
        android:layout_alignParentBottom="true" />

</RelativeLayout>

在清单中,我声明了该属性:

android:windowSoftInputMode="adjustResize|stateHidden"

有谁知道为什么它不起作用以及如何确保它起作用?

提前致谢!


问题答案:

好的,显然android:layout_height不应该将ScrollView
设置为wrap_content。我将其设置为match_parent并将其设置android:layout_above为页面底部的按钮。

不要问我为什么,但这可以解决问题。



 类似资料:
  • 我正在尝试构建一个自动化脚本来安装chrome扩展。 在我的本地系统(windows 10)上,当使用java的Robot类时,所有这些都可以正常工作,因为我有一个物理键盘连接到我的计算机。 问题是——当我试图在虚拟机(亚马逊EC2,视窗服务器)上运行这种自动化时,机器人类不起作用,因为它无法检测键盘的物理连接。 有没有其他方法可以在不连接键盘的情况下模拟键盘行程? 仅供参考,我必须使用键盘,因为

  • 我正在尝试使用selenium创建自动化,以安装chrome扩展。当我尝试在amazon虚拟机上运行这个jar时,我遇到了一个问题,因为当我尝试用robot类按enter键时,它不起作用,因为我没有连接物理键盘。我不能在selenium中使用sendkeys,因为来自google的pop不在同一页面,selenium无法识别它。有什么解决办法吗?

  • 问题内容: 我需要使用浏览整个页面。 现在我正在做: 当我单击Link1时,此方法工作正常,页面滚动到ID为“ div1”的div。 关键是,我不想更改单击后的后缀为URL的URL 。 我尝试了锚href 和 如何避免更改URL? 问题答案: 从Jeff Hines的jQuery动画中获得以下答案: 如果您使用的是jQuery,请不要忘记将库添加到项目中。 编辑:另外,请确保您仍然“返回false

  • 我正在开发WinForms应用程序,我想使用助记符键。由于Windows参数的原因,您似乎只能在按ALT键(此选项与默认选项类似)后选择在使用应用程序时显示它们。由于这个问题,我意识到了这个选项(顺便说一句,相关但不重复)。 我更改了此选项,并且助记符下划线在开始时正确显示。但我希望避免用户必须打开此选项或按ALT键才能看到带下划线的键。 所以我的问题是:在应用程序中,是否有任何方法可以在不更改设

  • 问题内容: 嗨,我目前有3个表格,如下所示。表之间没有通用键 表1-> linkage_Table 表2->材料表 表格3-> Color_Table 我希望得到以下结果集 我想编写一条SQL语句将表连接在一起。 链接表中带有*表示我们将从材料或颜色表中检索所有值。 我现在确实需要此解决方案。一直试图解决这个问题超过5个小时。在此先感谢您的帮助。 问题答案: 一种可能的方法: SQL小提琴 说明:

  • 问题内容: 我正在尝试实现一种解决方案,以防止当网页内容大于视口时,iOS Safari中的iOS反弹效果。 我正在处理的页面的结构非常具体,与该页面非常相似 基本结构是基于引导的。 它的顶部有一个固定的导航栏。 它具有全屏背景幻灯片播放。 幻灯片的覆盖层固定在视口的底部。 有一个页脚元素,可以加载画布,并且仅在滚动内容时可见。 内容在导航栏后面滚动。 内容由位于导航栏下方20px的标题和位于视口