我想创建一个布局,其中listview始终显示底部按钮上方的数据。怎么做。以下是给出的不同选项 我选择
item1
item2
button
empty space
empty space
empty space
empty space
empty space
empty space
II选项
item1
item2
item3
item4
item5
item6
item7
item8
button
III选项
item3
item4
item5
item6
item7
item8
item9
item10
button
如何使用列表和按钮实现此布局?例如,如果我有15个项目而不是通过滚动访问项目(ScrollView解决此问题)并且按钮可见。
答案 0 :(得分:0)
我理解你的问题。使用ListView
创建布局,并使用按钮创建另一个布局。现在添加Button
布局作为此ListView
布局的页脚。
ListView布局将是这样的
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<ListView
android:id="@+id/myListView"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</RelativeLayout>
现在按钮布局
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<Button
android:id="@+id/myButton"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</RelativeLayout>
您可以在ListView
中动态添加页脚。它是您的完美解决方案。查看答案How to add footer in Listview
为了您的目的,我可以重新编写代码作为示例。请检查并使用它。
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<LinearLayout
android:id="@+id/layoutOption1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:visibility="visible" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 1" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 2" />
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="My Button" />
</LinearLayout>
<LinearLayout
android:id="@+id/layoutOption2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:visibility="gone" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 1" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 2" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 3" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 4" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 5" />
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="My Button" />
</LinearLayout>
<LinearLayout
android:id="@+id/layoutOption3"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:visibility="gone" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 1" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 2" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 3" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 4" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 5" />
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="My Button" />
</LinearLayout>
</RelativeLayout>
</ScrollView>
在您的活动类中,为您的目的获取每个布局选项和setVisibility的ID。在您的要求中,我为您编写了此代码。谢谢。
答案 1 :(得分:0)
如果你想使用ScrollView试试这个:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<ScrollView
android:id="@+id/scroll"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_above="@+id/LastButton">
<LinearLayout
android:id="@+id/layout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 1" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 2" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 3" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 4" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 5" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 6" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Item 7" />
</LinearLayout>
</ScrollView>
<Button
android:id="@+id/LastButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:text="Last Button" />
</RelativeLayout>
LastButton nead android:layout_alignParentBottom =“true”,以便在LinearLayout增长时保持可见。