ListView 空值時的友好提示


做項目的時候,如果ListView或者gridView為空,進入界面一大片的空白,不是很好看,這個時候我們希望沒有數據的時候給出提示,完全可以通過手動判斷,當ListView中的size為0,顯示或者隱藏某個TextView。但是略顯麻煩。下面說兩種顯示的方法。

第一種:

分兩種情況,如果繼承的是ListActivity:

 

<ListView android:id="@id/android:list".../> 
<TextView android:id="@id/android:empty.../> 

當列表為空時就會自動顯示TextView 。
如果繼承的是一般的Activity:
可以

<ListView
        android:id="@+id/list_sms_history"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:scrollingCache="false" />
    <TextView 
        android:id="@+id/noSmsData"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center_vertical|center_horizontal"
        android:text="還沒有發送過短信,看不到短信記錄!" />
callLogList = (ListView)findViewById(R.id.call_log_list);
                myEmpty=(TextView)findViewById(R.id.myEmptyText);
                callLogList.setEmptyView(myEmpty);

第二種:直接寫提示信息:
然后在代碼中獲得對象以后:

TextView emptyView = new TextView(SmsSendHistoryActivity.this);  
                        emptyView.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));  
                        emptyView.setText("還沒有發送過短信,看不到短信記錄!");  
                        emptyView.setGravity(Gravity.CENTER_HORIZONTAL|Gravity.CENTER_VERTICAL);
                        emptyView.setVisibility(View.GONE);  
                        ((ViewGroup)list_sms_send.getParent()).addView(emptyView);  
                        list_sms_send.setEmptyView(emptyView);

轉:http://www.eoeandroid.com/thread-276135-1-1.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM