通常情况下ListView的android:layout_height属性我们都设置成"fill_parent",但是这样一来,它就会占据整个屏幕,如果它下面还有控件的话,就会被它“挤到”外面去。如何解决这种情况呢?表面上使用LinearLayout是最简单的,但就会出现上面的情形。那就使用RelativeLayout吧。
<?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"
>
<Button
android:id="@+id/btn_1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="click_1"
android:layout_alignParentLeft="true"
android:layout_alignParentBottom="true"
/>
<Button
android:id="@+id/btn_0"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="click_0"
android:layout_above="@id/btn_1"
android:layout_alignParentLeft="true"
/>
<ListView android:id="@+id/listview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_above="@id/btn_0"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
/>
</RelativeLayout>
上面的布局仅作参考!
当然如果将ListView换成ScrollView也是一样的,这里只起到抛砖引玉的目的。
另外,你也可以在ListView中使用android:layout_weight="1",这样就可以将它放在LinearLayout,这样是最简单的!