为listview设置最大高度

时间:2012-11-15 16:10:11

标签: android listview height

真的很蠢,但我想为listview设置一个最大高度,我似乎找不到有用的东西。有人谈到为listview设置maxheight,但我找不到这个选项? 我现在有

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:padding="40dp" >

    <ListView
        android:id="@+id/lvSwitch"
        android:layout_width="fill_parent"
        android:layout_height="120dp" >
    </ListView>
</LinearLayout>

但是当列表中只有一个项目时,它仍然具有120dp的高度,这当然没有必要,它只是不能超过那个高度...

3 个答案:

答案 0 :(得分:1)

试试这个:

 android:layout_height="wrap_content".

编辑: 你可以检查列表视图中的项目数量,并设置大小,以防它高于20.例如:

if(numberOfItems>20){
listview.setWidth(yourSize)
}

答案 1 :(得分:1)

android:layout_height="0dp"
android:layout_weight="1"

答案 2 :(得分:0)

android:layout="120dp"尝试android:minHeight="20dp"一起或代替{{1}},假设20dp是单个列表项的高度。这样,如果ListView有1或2个东西,它就不会占用整个120dp。