ListView2——Android群英传

来源:互联网 发布:阴司守门人网络剧资源 编辑:程序博客网 时间:2024/06/05 02:55

1、使用ViewHolder模式提高效率
在自定义Adapter中定义一个内部类ViewHolder,将布局中的空间作为成员变量。ViewHolder充分利用了视图缓存机制,避免每次调用getView使用通过findViewById()实例化控件。
2、设置项目间分割线
android:divider 设置颜色和高度
3、隐藏ListView的滚动条
android:scrollbars=”none”
4、取消ListView的Item点击效果
5.X上是一个波纹效果,以下是改变背景颜色
android:listSelector=”#00000000”,也可为透明
5、设置listview需要显示在第几页
listView.setSelection(N);
6、动态修改ListView
mAdapter.notifiDataSetChanged();
7、遍历ListView中的所有item
ListView作为一个ViewGroup,需通过getChildAt()获取第i个子View.
8、处理空ListView
setEmptyView(),可以给ListView设置一个在空数据下显示的默认提示
9、ListView滑动监听
OnTouchListener和OnScrollListener来实现监听

ListView常用拓展 自定义
1、具有弹性的ListView 半月形的阴影效果
非常简单的方法:ListView中一个控制滑动到边缘的处理方法中的maxOverScrollY默认值为0.我们将其改为设置的值mMaxOverDistance,通过屏幕的density计算具体的值,让不同分辨率的弹性距离基本一致:
DisplayMetrics metrics = mContext.getResources().getDisplayMetrics();
float density = meteics.density;
mMacOverDistance = (int)(density*mMaxOverDIstance);
2 、自动显示、隐藏布局的listview
5.0后有CollapsingToolbarLayout可折叠式标题栏,作为AppBarLayout子布局用,AppBarLayout必须是CoordinatorLayout子布局
3、聊天ListView
拥有两个不同的布局,在Adapter中的getView中判断获取哪一个布局。提供了两种方法:
getItemViewType()返回第position个Item是何种类型
getViewTypeCount()返回不同布局的总数

0 0
原创粉丝点击