Android中的setEmptyView怎么使用
发表于:2025-02-23 作者:千家信息网编辑
千家信息网最后更新 2025年02月23日,这篇"Android中的setEmptyView怎么使用"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我
千家信息网最后更新 2025年02月23日Android中的setEmptyView怎么使用
这篇"Android中的setEmptyView怎么使用"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"Android中的setEmptyView怎么使用"文章吧。
Android ListView之setEmptyView正确使用方法
假如emptyView和listview在布局中,已经属于同一个parent,设置EmptyView的代码如下
private void setEmptyView(){ emptyTv.setText(getString(R.string.txt_no_data_refreshable)); mList.setEmptyView(empty); }
假如没有数据,运行,一切正常。
下面我们执行一句代码后
mList.setVisibility(View.VISIBLE);
我们发现,emptyView看不到了,奇怪!
我们来看一下listview的setEmptyView的代码
public void setEmptyView(View emptyView) { mEmptyView = emptyView; // If not explicitly specified this view is important for accessibility. if (emptyView != null && emptyView.getImportantForAccessibility() == IMPORTANT_FOR_ACCESSIBILITY_AUTO) { emptyView.setImportantForAccessibility(IMPORTANT_FOR_ACCESSIBILITY_YES); } final T adapter = getAdapter(); final boolean empty = ((adapter == null) || adapter.isEmpty()); updateEmptyStatus(empty); }
其中重点看updateEmptyStatus的源码
private void updateEmptyStatus(boolean empty) { if (isInFilterMode()) { empty = false; } if (empty) { if (mEmptyView != null) { mEmptyView.setVisibility(View.VISIBLE); setVisibility(View.GONE); } else { setVisibility(View.VISIBLE); } if (mDataChanged) { this.onLayout(false, mLeft, mTop, mRight, mBottom); } } else { if (mEmptyView != null) mEmptyView.setVisibility(View.GONE); setVisibility(View.VISIBLE); } }
我们发现,控制emptyView的显示,就是隐藏listview,这两个试图互相隐藏显示,来达到效果,而且updateEmptyStatus方法只有在listview的setEmptyView时才会执行,所以当你执行mList.setVisibility(View.VISIBLE)的时候,listview被设置为可见,它覆盖了emptyView,所以你看不到,如果想显示emptyView,那就再执行一遍setEmptyView方法。
以上就是关于"Android中的setEmptyView怎么使用"这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注行业资讯频道。
内容
代码
方法
就是
文章
知识
篇文章
两个
价值
使用方法
只有
大部分
布局
效果
数据
时候
更多
步骤
源码
知识点
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
科技局互联网政务工作总结
华为服务器在哪里生产
如何做好网络安全防范论文
开发app可以用自己的服务器吗
数据库中更改主键
战地4 官方服务器
u8服务器装win10
数据库的排寻查询
临沂市网络安全办公室
APP软件开发需求样例
服务器运行中能关机吗
南京erp软件开发包括哪些费用
对口高考网络技术试题
东西湖专业的软件开发
苹果路由器可以做打印服务器吗
数据库怎么修改表的结构
5g工业互联网宝通科技
网络安全验收记录表
马云公司的网络安全顾问
安卓 数据库登录查询
迭代在软件开发中的意思
深圳言语软件开发技术
网络安全与黑客题答案
数据库删除所有数据
提升网络技术与设备用英语怎么说
基层政府如何维护网络安全
我的世界服务器停止连接
厦门翔安软件开发培训
青田成丰网络技术有限公司
树莓派分布式数据库