我正在显示一个可以包含任意行数的ListView。我希望ListView包装内容。我还希望一些文本位于屏幕的底部,无论列表的大小如何。像这样:
我尝试实现这一目标的方法如下:但是当内容很大时,它会使其看起来像左下角的图像。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@color/blue">
<TextView
android:id="@+id/fine_print"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_below:"@+id/table"
android:gravity="center_horizontal"
/>
<ListView
android:id="@+id/table"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/white_box">
</ListView>
</RelativeLayout>
并添加
android:layout_above="@id/fine_print"
到@ id / table使它看起来像右下角的图像。
我怎样才能让它做我想做的事?
答案 0 :(得分:3)
这看起来有点奇怪,但这是我如何运作的。由于底部的文字大小为“8dip”,并根据屏幕方向占据1或2行,我在列表下方放置了“16dip”的填充。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@color/blue">
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/details_wrapper"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:paddingBottom="16dip">
<ListView
android:id="@+id/table"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/white_box">
</ListView>
</LinearLayout>
<TextView
android:id="@+id/fine_print"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:gravity="center_horizontal"
/>
</RelativeLayout>
仍然愿意接受关于使这种清洁工的建议。
答案 1 :(得分:2)
回答主题:view.bringToFront();
您也可以尝试使用xml:android:translationZ="10dp"
答案 2 :(得分:1)
我认为您只需添加TextView
类似
android:layout_below:"@+id/table"
如果有效,请告诉我。