ListView中emptyview的运用
来源:互联网 发布:win10下装linux双系统 编辑:程序博客网 时间:2024/06/15 21:00
咱们在工作中会用到ListView.当ListView的配套Adapter的数据为空的时候,我们常常希望会给用户一个提示,告诉用户此时没有数据.比如下载列表, 用户列表等等.这个时候我们可以通过ListView的setEmptyView方法来设置一个空数据时显示的View.想跟大家分享的有两点:
1.这里有的朋友会说,能不能在Adapter的getView方法中判断数据的size是否为0,是0的话我们显示空数据对应的view;否则显示有数据时的View.这里需要强调的是这样做时行不通的.因为当Adapter的数据源的数据个数(mData.size)为0时,不会调用getView!!!所以还得另想辙.
2.在使用setEmptyView时,这个空数据时要显示的View有两个生成途径:
(1) 在xml定义视图布局时,定义该emptyView与ListView控件在View层次的同一级别上,例如
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity">
<ListView
android:id="@+id/id_listview"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<Button
android:id="@+id/id_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/no_data"/>
</RelativeLayout>
然后在java代码中直接获取实例并调用setEmpty即可
View emptyView = findViewById(R.id.id_button);
mListView.setEmptyView(emptyView);
(2) 用java代码创建View试图而不是通过xml时,需要将emptyView添加到ListView的父视图中,即:
View emptyView = layoutInflater.inflate(R.layout.singlelayout, null);
((ViewGroup) mListView.getParent()).addView(emptyView); // 将emptyView添加到ListView的父亲视图中
mListView.setEmptyView(emptyView); // 然后在调用setEmptyView
以上是对emptyView的运用小结,也许还会有另外的设置emptyView的途径,后面我还会再补充进来.
- ListView中emptyview的运用
- android ListView中EmptyView的使用
- 设置ListView的emptyView
- ListView设置emptyView的限制
- ListView设置EmptyView的方法
- ListView设置emptyView的限制
- ListView设置emptyView的限制
- ListView设置emptyView的限制
- android设置ListView的EmptyView
- Android ListView的EmptyView处理
- ListView的设置emptyView的误区
- 实战EmptyView,为ListView的加载缓冲
- 实战EmptyView,为ListView的加载缓冲
- 自定义带加载中与加载失败的EmptyView的ListView
- ListView之EmptyView
- ListView设置EmptyView
- ListView RecyclerView使用EmptyView
- 给ListView设置emptyView
- C语言中log的用法
- 堆
- Fragment和activity的之间的数据传递以及页面跳转
- jsp之application
- POJ 1218 THE DRUNK JAILER
- ListView中emptyview的运用
- C#中class与struct的区别
- Mutex(互斥量)
- UVA - 11627 - Slalom(二分法)
- 影响逻辑斯蒂回归性能的因素
- hevc测试条件以及序列(学习hevc的必备工具)
- Linux C++开发环境搭建
- Validate Binary Search Tree(二叉树前序、中序遍历)
- java中的main函数中args[]参数解析