ListView之setEmptyView的问题
使用listView或者gridView时,当列表为空时,有时需要显示一个特殊的empty view来提示用户,一般情况下,如果你是继承ListActivity,只要
<ListView android:id="@id/android:list".../>
<TextView android:id="@id/android:empty.../>
当列表为空时就会自动显示TextView
但是,如果继承Activity的话,想出现上面的效果,就需要手动
<ListView android:id="@+id/list" .../>
<TextView android:id="@+id/empty" .../>
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);
结果真的可行!
也就是说,这个EmptyView必须要跟ListView一样,也是在view树上的一个控件。
ListView之setEmptyView的问题的更多相关文章
- 关于ListView的setEmptyView没效果的问题
使用listView或者gridView时,当列表为空时.有时须要显示一个特殊的empty view来提示用户,普通情况下,假设你是继承ListActivity.仅仅要 TextView tv= ne ...
- Android之ListView的使用技巧
之前有总结过关于ListView的一些优化技巧,比如它的ConvertView的复用Recycler机制,使用ViewHolder来提高列表条目的findById的效率,以及宽高的设置确定值的好处,如 ...
- RecyclerView 和 ListView 使用对比分析
原文地址:http://blog.coderclock.com/2016/08/08/android/RecyclerView%20%E5%92%8C%20ListView%20%E4%BD%BF%E ...
- 使用ListView应该注意的地方
android:clipToPadding和android:clipChildren http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/201 ...
- Android RecyclerView与ListView比较
RecyclerView 概述 RecyclerView 集成自 ViewGroup .RecyclerView是Android-support-V7版本中新增的一个Widgets,官方对于它的介绍是 ...
- android 引用 project以及下拉刷新开源类库Android-PullToRefresh 的使用
Android-PullToRefresh 是一个github上的开源下拉刷新类库, GitHub .此外,该作者还有另外一个实用度和关注量极高的项目–另一种Android ActionBar的实现 ...
- Android-PullToRefresh 使用心得
目前下拉刷新已经满大街都是,在自己的应用如果不使用这个模式的话,出门都不好意思和人家打招呼,该文章就是简单探讨下针对于 github 上的这个开源项目的使用心得. 为什么是它?因为在 stackove ...
- 2017上半年技术文章集合【Android】—184篇文章分类汇总
地址: http://blog.csdn.net/androidstarjack/article/details/77923753 声明 | 本文是于亚豪 原创 终端研发部 前言: 2017年已经过大 ...
- 开源库BaseRecyclerViewAdapterHelper
相信大家RecyclerView应该不会陌生,大多数开发者应该都使用上它了,它也是google推荐替换ListView的控件,但是用过它的同学应该都知道它在某些方面并没有ListView使用起来方便, ...
随机推荐
- 微信 JSSDK .NET版
/*因为官方 微信 JSSDK 只有PHP java版本的 我自己照着PHP的翻译过来的,可供参考.欢迎指正*/ [csharp] view plaincopy在CODE上查看代码片派生到我的代码片 ...
- js net 除法取整
1.js中 在编程运算中,除法取整数是比较常用的!一般的编程语言都有内置的函数,JS 脚本也不例外.在JavaScript 中,实现除法取整数有两种方法,即是两个内置函数:Math.floor 和Ma ...
- ASP.NET MVC 控制器向View传值的三种方法
转自:http://www.cnblogs.com/shinima/p/3940452.html 1.提供视图模型对象 你能把一个对象作为View方法的参数传递给视图. public ViewResu ...
- Oracle自增主键的添加[sequence]--表数据已存在
--增加主键ID ); --设置sequence使ID自增 create sequence SEQ_ID minvalue maxvalue start ; --将id的值设置为sequence Up ...
- [mysql] mysql explain 使用
explain显示了mysql如何使用索引来处理select语句以及连接表.可以帮助选择更好的索引和写出更优化的查询语句. 先解析一条sql语句,看出现什么内容 EXPLAINSELECTs.uid, ...
- mybatis insert前获取要插入的值
<insert id="insertRequestItem" parameterType="requestItemModel"> <selec ...
- Linux dirname $0 source if
$SHELL gives the full path to your default shell. $0 gives the name of your current shell. dirname是一 ...
- Hibernate3.3用户手册摘要-1-辅助类,session
1.1.6. 启动和辅助类 是时候来加载和储存一些 Event 对象了,但首先我们得编写一些基础的代码以完成设置.我们必须启动 Hibernate,此过程包括创建一个全局的 SessoinFactor ...
- 【phantomjs】使用phantomjs生成highChart的图片(待完善)
阅读目录 //center }, subtitle: { text: 'Source: WorldClimate.com', x: -20 }, xAxis: { categories: ['Jan' ...
- linux系统中rsync+inotify实现服务器之间文件实时同步
最近需要对服务器上的文件实施动态备份,我又不想每次都手动来进行备份,在网上找了挺多资料,发现使用rsync就可以实现,如果想要实现实时同步,还可以使用rsync+inotify组合,本文就是以组合方式 ...