2011-08-22 179 views
0

我已經創建了一個My custom listActivty通過擴展ListActivity這樣。設置android的listView的emptyViewActivity

public class MainList extends ListActivity { 

ListView listView; 

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    listView = getListView(); 
    setContentView(R.layout.list_main); 

    } 

} 

,並宣佈其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" 
     > 
</ListView> 
<TextView android:id="@id/android:empty" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:background="#FFFFFF" 
     android:text="My Text" 
/> 

</LinearLayout> 

我使用的CursorAdapter作爲listActivity adapter.Its與MainList完全顯示爲空。

我的問題是,當MainList爲空時,我想顯示的不僅僅是一個textview。基本上我需要自定義視圖(imageview,按鈕等),當列表爲空時顯示。我應該如何做到這一點。

感謝

+0

這是可能面對此問題的每個人的代碼。 – Rishi

+0

'final LayoutInflater inflater = LayoutInflater.from(mycontext); final View view = inflater.inflate(R.layout.sample_view,null,false); view.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT)); ((ViewGroup)listView.getParent())。addView(view); listView.setEmptyView(view); ' – Rishi

回答

1

對於listview有一個默認方法來設置空視圖。

setEmptyView(圖)

試試這個....在視地方通過您的自定義視圖。

如果你沒有得到,然後告訴我。我會爲此發佈一個示例。

+0

是的,謝謝它通過setEmptyView(視圖)工作。 – Rishi

+0

K.檢查這個www.androidcodesnips.blogspot.com在這裏你會發現安卓剪輯是有用的.... – harish

0

你可能想在你CursorAdapter計數的項目。如果返回0,請隱藏/顯示XML中的部分?我就是這樣做的,但他們可能是更好的方法。

0

嘗試使用android:id/empty爲您的自定義視圖。我認爲你可以將id應用於任何視圖,而不僅僅是一個TextView

+0

他已經知道了! – Ricky