您的位置:首页 > 其它

ListView 空值时的友好提示

2015-12-18 10:29 218 查看

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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: