我有一个带有项目的可滚动ListView(如http://developer.android.com/resources/tutorials/views/hello-listview.html中所示)。我使用ArrayAdapter
作为项目,并将其用作setListAdapter
中的参数。现在我想在屏幕底部添加一个按钮,该按钮不会随列表一起滚动。有人可以给我一些提示或发布一段代码片段吗?
答案 0 :(得分:104)
如果您的活动扩展了ListActivity,那么您需要这样的内容:
<LinearLayout android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<ListView android:id="@android:id/list"
android:layout_height="0dip"
android:layout_width="match_parent"
android:layout_weight="1" />
<Button android:id="@+id/btn"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
请注意,listview的layout_weight设置为1.这将使按钮固定在底部的位置。希望有所帮助。祝你好运!
答案 1 :(得分:14)
您可以使用RelativeLayout修复布局底部的按钮,并在其上方添加listView,如下所示:
<RelativeLayout android:layout_width="match_parent"
android:layout_height="match_parent">
<Button android:id="@+id/btn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"/>
<ListView
android:id="@android:id/list"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:layout_above="@id/btn" />
</RelativeLayout>
答案 2 :(得分:1)
我的解决方案基于Houcline的solution但ListView
始终高于Button
<CheckBox
android:id="@+id/chbRemoveIfUninstall"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"/>
<ListView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_above="@id/chbRemoveIfUninstall"/>