我的问题类似于此处的问题:Android ListView doesn't expand the whole screen?
XML是:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:id="@+id/ResultLayout">
<ScrollView android:layout_width="fill_parent" android:layout_height="fill_parent">
<ListView android:layout_width="fill_parent" android:id="@+id/ListView"
android:layout_height="fill_parent"></ListView>
</ScrollView>
<LinearLayout android:id="@+id/pagingPanel"
android:gravity="center" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:orientation="horizontal"></LinearLayout>
<Spinner android:layout_width="fill_parent" android:id="@+id/ManSpinner"
android:layout_height="fill_parent" />
</LinearLayout>
在这种情况下,我应该ScrollView
或PagingPanel
LinearLayout
将会消失。
所需的布局是将所有元素叠加在一起。但如果元素超出页面高度,则应将滚动添加到ListView
。
答案 0 :(得分:1)
如果您有垂直LinearLayout
,则fill_parent
元素的layout_height
不能有多个LinearLayout
。你想要实现什么样的布局?为所有元素统一划分屏幕?
另一个问题是在ListView
中使用ScrollView
也不是一个好主意,因为ListView
本身是可滚动的。
您应该编写您希望使用XML实现的布局。通常也是一种很好的做法,可以通过多个步骤编写XML,并按布局迭代到解决方案布局。
编辑:好的,尝试这样的事情:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/ResultLayout">
<ListView android:id="@+id/ListView"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1" />
<LinearLayout android:id="@+id/pagingPanel"
android:gravity="center"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
</LinearLayout>
<Spinner android:id="@+id/ManSpinner"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</LinearLayout>