第一行代码+Android+第2版 笔记第三天
2017-06-28 17:31
337 查看
ArrayAdapter:它可以通过泛型来指定要适配的数据类型,然后再构造函数中把要适配的数据传入。
ArrayAdapter的构造函数中依次传入1当前上下文2ListView子项布局的id3要适配的数据;
只显示一段文本的ListView构建方法:
android.R.layout.simple_list_item_1:
作为ListView子项布局的id->是Android内置的布局文件:
里面只有一个TextView,可用于简单的显示一段文本;
调用ListView的setAdapter()方法:将构建好的适配器对象传递进去;->ListView和数据之间的关联就建立完成了;
定制ListView的界面:
getView()中有一个convertView参数:将之前加载好的布局进行缓存->以便之后可以重用;
新增内部类ViewHolder:对控件的实例进行缓存;->没有必要每次都要通过findViewById()方法来获取控件实例了
ListView的点击事件:->onItemClick()
更强大的滚动控件:RecyclerView->增强版的ListView
RecyclerView:不是内置在系统SDK中,所以要把完整的包路径写出来
onCreateViewHolder()方法:用于创建ViewHolder实例;
onBindViewHolder()方法:用于对RecyclerView子项的数据进行赋值的,会在每个子项滚动到屏幕内的时候执行;
getItemCount()方法:用于高速RecyclerView一共有多少子项,直接返回数据源的长度;
LayoutManager用于指定RecyclerView的布局方式;
LinearLayoutManager是线性布局;setOrientation()方法:设置布局的排列方向;
RecyclerView的setAdapter()方法:完成适配器设置
实现横向滚动和瀑布流布局
ListView只能实现纵向滚动,扩展性也不好;RecyclerView可以;
layout_marginTop属性:让文字和图片之间保持一些距离;
GridLayoutManager:网格布局;
StaggeredGridLayoutManager:瀑布流布局;
StaggeredGridLayoutManager的构造函数接收两个参数:1指定布局的列数;2指定布局的排列方向;
把创建好的实例设置到RecyclerView中就可以了;
RecyclerView的点击事件:
在ViewHolder中添加fruitView变量:保存子项最外层布局的实例;
在onCreateViewHolder()方法中注册点击事件->viewHolder.fruitView.setOnClickListener(newOnClickListener(){});
RecyclerView用于显示聊天的消息内容;
EditText用于输入消息;
Button用于发送消息;
加微信:yc616671553
领取
第一行代码+Android+第2版
PDF版本
ArrayAdapter的构造函数中依次传入1当前上下文2ListView子项布局的id3要适配的数据;
只显示一段文本的ListView构建方法:
android.R.layout.simple_list_item_1:
作为ListView子项布局的id->是Android内置的布局文件:
里面只有一个TextView,可用于简单的显示一段文本;
调用ListView的setAdapter()方法:将构建好的适配器对象传递进去;->ListView和数据之间的关联就建立完成了;
定制ListView的界面:
getView()中有一个convertView参数:将之前加载好的布局进行缓存->以便之后可以重用;
新增内部类ViewHolder:对控件的实例进行缓存;->没有必要每次都要通过findViewById()方法来获取控件实例了
ListView的点击事件:->onItemClick()
更强大的滚动控件:RecyclerView->增强版的ListView
RecyclerView:不是内置在系统SDK中,所以要把完整的包路径写出来
onCreateViewHolder()方法:用于创建ViewHolder实例;
onBindViewHolder()方法:用于对RecyclerView子项的数据进行赋值的,会在每个子项滚动到屏幕内的时候执行;
getItemCount()方法:用于高速RecyclerView一共有多少子项,直接返回数据源的长度;
LayoutManager用于指定RecyclerView的布局方式;
LinearLayoutManager是线性布局;setOrientation()方法:设置布局的排列方向;
RecyclerView的setAdapter()方法:完成适配器设置
实现横向滚动和瀑布流布局
ListView只能实现纵向滚动,扩展性也不好;RecyclerView可以;
layout_marginTop属性:让文字和图片之间保持一些距离;
GridLayoutManager:网格布局;
StaggeredGridLayoutManager:瀑布流布局;
StaggeredGridLayoutManager的构造函数接收两个参数:1指定布局的列数;2指定布局的排列方向;
把创建好的实例设置到RecyclerView中就可以了;
RecyclerView的点击事件:
在ViewHolder中添加fruitView变量:保存子项最外层布局的实例;
在onCreateViewHolder()方法中注册点击事件->viewHolder.fruitView.setOnClickListener(newOnClickListener(){});
RecyclerView用于显示聊天的消息内容;
EditText用于输入消息;
Button用于发送消息;
加微信:yc616671553
领取
第一行代码+Android+第2版
PDF版本
相关文章推荐
- 第一行代码+Android+第2版 笔记第二天下午
- 《第一行代码--Android》阅读笔记之界面设计
- (第一行代码笔记)调试Android程序
- Android第一行代码学习笔记一----android架构
- 第一行代码笔记,第一章-------开启你的第一行Android代码
- Android第一行代码学习笔记五----内容提供器
- 《第一行代码--Android》阅读笔记之广播
- android第一行代码笔记
- Android第一行代码学习笔记二----活动
- Android系统架构(Android第一行代码学习笔记1)
- Android第一行代码学习笔记九----高级技巧
- 第一行代码学习笔记-第一章 开始启程-1.android简介
- 《第一行代码--android》笔记
- Android第一行代码学习笔记三----广播
- 第一行代码Android笔记精华版
- 《第一行代码--Android》学习笔记--第一章:开始起航:思路
- Android--第一行代码笔记(1)
- Android--第一行代码笔记(2)
- Android第一行代码学习笔记六----手机多媒体
- Android第一行代码学习笔记四----数据存储