2010-02-22 120 views

回答

5

是的,它仍然會填充空間,但不是顯示列表,而是顯示另一個視圖。這裏有一個例子:

<FrameLayout 
    android:id="@+id/GLFrame" 
    android:layout_height="fill_parent" 
    android:layout_width="fill_parent" /> 
    <TextView 
     android:layout_height="fill_parent" 
     android:layout_width="fill_parent" 
     android:id="@android:id/empty" 
     android:gravity="center_vertical|center_horizontal|center" 
     android:text="@string/no_songs_found" 
     android:textColor="#FFF" 
     android:textSize="20sp" 
     android:textStyle="bold" /> 
    <ListView 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:id="@android:id/list" 
     android:cacheColorHint="#0000" /> 

的這裏關鍵是"@android:id/empty""@android:id/list" IDS。這些告訴Android,如果列表爲空,它應該顯示列表或其他視圖。

+2

這隻適用於使用'ListActivity'的情況。 – CommonsWare 2010-02-22 20:59:14

+0

這是真的。我忘了提到這一點,謝謝! – CaseyB 2010-02-22 21:43:22

+0

順便說一句,如果我的主視圖佈局包含的佈局視圖只是佈局的*部分*(即其他部件上下都有),我還應該擴展ListView還是應該用其他方式來封裝? – Eno 2010-02-23 07:40:48