閱讀183 返回首頁    go 阿裏雲 go 技術社區[雲棲]


listview為空時,顯示字符串

使用listView或者gridView時,當列表為空時,有時需要顯示一個特殊的empty view來提示用戶,一般情況下,如果你是繼承ListActivity,隻要 
<ListView android:.../> 
<TextView android:font-family:Helvetica, Tahoma, Arial, sans-serif;font-size:14px;line-height:25px;text-align:left;">當列表為空時就會自動顯示TextView 

但是,如果繼承Activity的話,想出現上麵的效果,就需要手動 

<ListView android: .../> 
<TextView android: .../> 

ListView list= (ListView)findViewById(R.id.mylist); 
TextView tv= (TextView)findViewById(R.id.myempty); 

list.setEmptyView(tv); 

誤區: 
setEmptyView(View)這個函數很有誤導性,有時可能會在代碼中寫EmptyView,像下麵這樣: 

TextView tv= new TextView(this); 
tv.setText("this is a empty view") 
setEmptyView(tv); 
這樣是不行的。。。 

但是後來我在老外的網上說下麵這樣是可行的,注意第4,5行: 

TextView emptyView = new TextView(context);
emptyView.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
emptyView.setText(“This appears when the list is empty”);
emptyView.setVisibility(View.GONE);
((ViewGroup)list.getParent()).addView(emptyView);
list.setEmptyView(emptyView);


最後更新:2017-04-02 16:48:11

  上一篇:go tomcat+apache入門做集群
  下一篇:go Tomcat集群Cluster實現原理剖析