Android BaseAadapter适配器
来源:互联网 发布:易投水利造价软件 编辑:程序博客网 时间:2024/09/21 08:18
前言
最近和室友一起想弄一个带饭的app,在局域网内有数据库交互的那种平台软件,当然做一定会很简陋功能不全,但仅仅是尝试。带饭的界面上应该有个ListView,里面显示各种饭的信息,然后点击可以看到详细信息,像美团那种,关于这个我就不知道怎么弄了,用前一篇日志的两种简单适配器好像无法做到自动给每个item设置事件,于是学习了一下BaseAdapter。现在我依然没有实现设置事件,但学习了三种BaseAdapter写法,作为记录和分享。
BaseAdapter与其他简单适配器有什么区别?
其实其他的几个简单适配器,如ArrayAdapter,SimpleAdapter,都是继承自BaseAdapter,这里我不是直接用BaseAdapter,而是去继承BaseAdapter然后重写方法。
BaseAdapter简单方法
1.先创建布局文件。布局文件做两个,一个是普通界面,里面有一个listview并设置一个id,另一个界面是item界面,是具体每个条目界面,这里我的item左边一张图片,右边2个TextView。
2.写一个Itembean的Java文件,保存item的数据
3.写安卓的Activity文件,这个文件里添加item个数和数据
4.重写BaseAdapter.先定义一个私有的动态数组,接收数据源。小幅改动自动生成的4个函数,核心在于完成 getView这个方法,实际就是找到id然后显示出来
详细的情况,我会发在csdn资源里用作保存
BaseAdapter进阶方法
把一般方法每次都找界面改成了如下
if (convertView == null) { convertView = mInflater.inflate(R.layout.item, null);}
目的好像是如果界面缓存了,就不会在生成,就是利用了ListView缓存机制,提升了性能。
BaseAdapter优化方法
使用了ViewHolder。
创建内部类ViewHolder,对应布局内控件属性通过setTag将ViewHolder与convertView绑定
getTag()取出关联的ViewHolder
通过ViewHolder对象找到对应控件
通过ViewHolder类实现显示数据的视图的缓存,目的避免多次通过findViewById找id
资源链接:
- Android BaseAadapter适配器
- Android BaseAadapter 异步加载图片方法
- android&&适配器
- android 适配器
- android适配器
- Android适配器
- android 适配器
- android适配器
- Android适配器
- Android 适配器
- Android 适配器
- Android适配器
- Android适配器
- Android适配器
- Android适配器-附万能适配器工具类
- Android适配器视图与适配器AdapterView & Adapter
- Android Adapter适配器
- android 适配器 simpleAdapter
- python获取和更改系统编码
- Mysql命令行汇总--help
- iOS 视频播放器
- 正则表达式完整版
- 黑马程序员 - OC语言 - NSString介绍及基本使用 (文件读取、写入)
- Android BaseAadapter适配器
- 解决:Could not resolve archetype org.apache.maven.archetypes:maven-archetype-quickstart
- 基于RTSP的流媒体播放器制作(1)
- vs2013报错 无法打开包含文件 "winsock2.h" 的一种解决办法
- 实战c++中的vector系列--vector<unique_ptr<>>赋值给vector<unique_ptr<>>
- java截取字符串,截串,substring和split,分割字母和数字,正则缝隙
- 介绍一下Python科学计算常用的工具、库、发行版
- Codeforces Round #313 (Div. 2) 560D Equivalent Strings(dos)
- Git入门---一般使用