android 判断listview是否为空,快速处理ListView为空的情况

在移动开发中经常会使用到列表显示,对于列表显示我们经常使用的就是ListView控件。在显示列表的时候通常有两种情况:

一、列表是满的;

二、列表是空的;

在没有数据的时候我们应该怎么处理呢?有一个简单的方法可以解决问题,我们来看一下。

ListView和其他继承自AdapterView的类可以使用setEmptyView(View view)方法设置空状态下的显示。当绘制AdapterView的适配器为空或者isEmpty方法返回true,此时就会显示setEmptyView(View view)方法设置的视图。

例如:我们在界面上显示如下视图。

android:layout_width="match_parent"

android:layout_height="match_parent">

android:id="@+id/empty_listview_lv"

android:layout_width="match_parent"

android:layout_height="match_parent" />

android:id="@+id/empty_imageview_iv"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:src="@drawable/bg"

android:visibility="gone"/>

在ListView下显示一个ImageView,注意我在测试的时候发现ImageView一定设置android:visibility=”gone”否则不管ListView的适配器是否为空都会显示。

在Activity中我们可以这样设置:

public class EmptyListViewActivity extends Activity {

private ListView empty_listview_lv;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.empty_listview_layout);

empty_listview_lv = (ListView) findViewById(R.id.empty_listview_lv);

String[] mListStr = {"1","2","3","3","4"};

empty_listview_lv.setAdapter(new ArrayAdapter(this,android.R.layout.simple_list_item_1, mListStr));

empty_listview_lv.setEmptyView(findViewById(R.id.empty_imageview_iv));

}

}

这样当我们的数据为空的时候可以把empty_listview_lv.setAdapter(null);这样就会显示ImageView(注:不需要把ImageView的visibility设置为可见);

附:有数据显示

a55dc27634a9465c6518f1bb5cdb9588.png

没有数据情况显示

149bf1155dbb8e08c6e0541ae7cc54ce.png

以上这篇快速处理ListView为空的情况就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值