我有一个GridLayout
包含ListView
和TextView
。当物品 增加到ListView
时,它会变大,并将TextView
推下 屏幕。我认为通过在ListView上设置layout_gravity="fill"
它不会增长,而是占用所有可用空间。如何限制GridLayout中ListView的高度?
如何配置ListView
占用可用空间而不是 增长并将其下方的视图推出屏幕?
我正在寻找使用GridLayout
的解决方案。我知道,在我的情况下, LinearLayout
将工作。然而,这只是一个最小的测试案例,以 说明我的问题。
我不想以编程方式设置高度,如果可能的话。
<android.support.v7.widget.GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:columnCount="1"
app:useDefaultMargins="true" >
<ListView
app:layout_gravity="fill" />
<TextView
android:text="TextView" />
</android.support.v7.widget.GridLayout>
就这样,我明白你的问题,你希望你的ListView是一个静态高度和单独滚动?就像在ListView中滚动时一样,GridView的其余部分也不会滚动。 – 2014-10-14 13:33:01
是的,ListView应该占用所有可用空间。它也应该是可滚动的,但是GridView不应该滚动并且ListView下面的TextView应该始终可见。 – 2014-10-14 13:43:07
你不能直接使用GridLayout来做你想做的事。甚至文档都指出这个小部件不支持重量的概念,并建议将这些孩子包裹在LinearLayout中。 – Luksprog 2014-10-14 14:05:42