我在使用 ScrollViews 时遇到了很多问题。最近我尝试创建一个内容超过屏幕大小的 LinearView,因此我使用父元素 ScrollView 创建了新布局,并将其宽度和高度设置为自定义值(布局必须显示为对话框 - 而不是填满整个屏幕)。
当元素被选中时,红色边框似乎包含了预定义的 ScrollView LayoutWidth 和 LayoutHeight 的矩形,这是可以的。然后我放置在 LinearView 内并将值 LayoutWidth 和 LayoutHeight 设置为 fill_parent。
然后,当我开始将元素添加到 LinearLayout 中时,边框(红色小线)包裹了插入的元素,而不是整个父 ScrollView。
因此,当 LinearLayout(ScrollView 的子项)的内容超过父 ScrollView 的大小时,滚动不会出现,并且底部元素根本不可见。
无论如何......
布局的以下部分旨在成为可滚动的 EditText(以防用户输入超出小部件的主要大小)。我想将 EditText 高度设置为 120px,所以我将父 ScrollView 高度设置为 120px,将子 EditText 设置为 fill_parent。同样在这种情况下,EditText 不会填充整个 ScrollView 区域,而是单行:
<ScrollView android:layout_height="120px" android:layout_width="fill_parent">
<EditText android:id="@+id/txtContent" android:layout_height="fill_parent" android:layout_width="fill_parent" android:text="TestContent">
</EditText>
</ScrollView>
有谁知道如何 reshape 上面的内容,以便 EditText 填充父控件,以防用户的输入超出控件大小,滚动出现?
谢谢!
编辑:
以下是布局截图
删除了无效的 ImageShack 链接
删除了无效的 ImageShack 链接
最佳答案
您的 EditText 的高度应为 wrap_content
。 fill_parent
在 ScrollView
中没有任何意义。如果您希望 EditText
在其内容小于 ScrollView
时填充您的 ScrollView
,请使用 android:fillViewport="true"
在 ScrollView
上。
关于Android: ScrollView 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2033296/