2011-06-17 41 views

回答

3

添加到Aleadam,比爾·莫特

您可以在任何時間AdapterView.setEmptyView(視圖V)一個AdapterView對象調用附加一個視圖你會喜歡用作空視圖。

的片段如下:

empty = (TextView)findViewById(R.id.empty1); 
    list = (ListView)findViewById(R.id.list1); 

    list.setEmptyView(empty); 

請務必保持同一母公司內部的ListView和TextView的。

有關詳細說明,請參閱this

2

如果您使用的是ListActivity,那是默認行爲。如果不是,那麼您可以將ListView的可見性設置爲GONE,將TextView的可見性設置爲VISIBLE。

0

Aleadam是對的。下面是支持他的回答的一個示例XML:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    <ListView 
     android:id="@+id/android:list" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     /> 
    <TextView 
     android:id="@id/android:empty" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:textColor="@drawable/red" 
     android:gravity="center_vertical|center_horizontal" 
     android:textStyle="bold" 
     android:text="@string/error_no_groups" 
     /> 
</LinearLayout> 
0

的Android開發者網站上的第一個教程介紹瞭如何做到這一點: http://developer.android.com/resources/tutorials/notepad/notepad-ex1.html

(請看下步驟4)

段:

  • ListView和TextView可以被認爲是兩個可選的視圖,其中只有一個會顯示立刻就開始了。有顯示註釋時將使用ListView,而如果沒有顯示註釋,將顯示TextView(默認值爲「No Notes Yet!」,其定義爲res/values/strings.xml中的字符串資源)任何要顯示的註釋。
  • 當ListAdapter沒有ListView的數據時,會自動使用帶有空ID的視圖。 ListAdapter默認會查找這個名字。或者,您可以通過在ListView上使用setEmptyView(View)來更改默認的空視圖。
相關問題