列表类控件
Android中最常用的控件之一
可以通过手指上下滑动,滚动视图显示内容
用法相对其他控件比较复杂
1.2ListView的简单用法
1.3ListView的使用
使用ViewHolder模式提高效率
ViewHolder模式是提高ListView效率的一个重要的方法。ViewHolder模式充分利用了ListView的视图缓存机制,避免了每次在调用getView()的时候都去通过findViewById()实例化控件。
隐藏ListView的滚动条
取消ListView的Item点击效果
5.X以上是水波纹效果,5.X以下是一个改变背景颜色的效果,设置如下所示的listSelector的属性值可以去掉点击效果
设置ListView需要显示在第几项
ListView以Item为单位进行显示,默认显示在第一个Item,当需要指定具体显示的Item时,可以通过如下代码来实现
动态修改ListView
//对适配器的数据进行更新
mData.add("new");
mAdapter.notifyDataSetChanged();
ListView的滑动监听
ListView的滑动监听主要包括:OnTouchListener以及OnScrollListener,此外开发者通常还需要使用GestureDetector手势识别、VelocityTracker滑动速度检测辅助类来完成更好的监听。
ListView通常有两个功能
将数据填充到布局,展示到界面
处理用户的点击等操作
使用ListView需要三个要素
ListView中的每一行的View
填入View的数据
绑定数据与View的适配器Adapter
1.4ListView适配器
2.Adapter的概念及使用
2.1最简单的Adapter
```
mListView = findViewById(R.id.list_view);
ArrayAdapter<String> adapter=new ArrayAdapter<>(
MainActivity.this,
android.R,layout.simple_list_item_1,
data);
mListView.setAdapter(adapter);
```
————————————————
2.2item的layout选项
3.ListView编程技巧
通过调用setOnItemClickListener()可以为ListView的每一行添加用户手指点触时间响应
类似地,setOnItemLongClickListener()设定长按时间响应代码
2.3ListView的四种选择模式
3.RecyclerView
3.1为什么叫做RecyclerView
3.2优缺点
优点
替代ListView和GridView
插拔式体验,灵活而高效,高度解耦
提供不同的LayoutManager,ItemDecoration,ItemAnimator,实现各种效果
LinearLayoutManager:线性布局
GridLayoutManager:网格布局
StaggeredGridLaoutManager:交错网格布局
缺点
需自定义列表分割线
需自定义实现列表的点击事件
3.3.RecyclerView最基本的使用
接入
implementation 'com.android.support:recyclerview-v7:26.1.0
创建对象
recycle人View = (RecyclerView)findViewById(R.id.recycler)
设置显示规则
设置适配器
3.4RecyclerView的调用过程
4.GridView
4.1概述
GridView组件是以网格的形式显示所有的组件,主要用于一些相册的布局显示图片
GridView采用二维表的方式显示单元格,需要设置行和列两个属性
GridView的单元格会根据列数自动拆行显示,因此,不需要设置行数,只需要设置android:numColumns属性
应用场景
九宫格效果
获取系统应用
GridView动态加载数据
4.2GridView常用XML属性及相关方法
4.3GridView实现数据加载的步骤
1.创建包含布局文件
2.创建每个GridView子项的布局文件
3.定义GridView的数据结构(容器)
4.定义列表适配器
5.定义数据源并对数据源进行初始化
6.将适配器设置给GridView
————————————————