一、概述:
—————————————————–
(java 架构师全套教程,共760G, 让你从零到架构师,每月轻松拿3万)
请加微信号:charlinsir, 下载请用百度盘
目录如下:
01.高级架构师四十二个阶段高
02.Java高级系统培训架构课程148课时
03.Java高级互联网架构师课程
04.Java互联网架构Netty、Nio、Mina等-视频教程
05.Java高级架构设计2016整理-视频教程
06.架构师基础、高级片
07.Java架构师必修linux运维系列课程
08.Java高级系统培训架构课程116课时
(送:hadoop系列教程,java设计模式与数据结构, Spring Cloud微服务, SpringBoot入门)
01内容:
—————————————————–
base-adapter-helper 是对我们传统的BaseAdapter的ViewHolder的模式的一个抽象。主要功能就是简化我们在书写AbsListView,例如ListView,GridView的Adapter的代码。
特点
提供QucikAdapter,极大简化我们的代码。
BaseAdapterHelper中封装了大量用于为View操作的辅助方法,例如从网络加载图片:
helper.setImageUrl(R.id.iv_photo, item.getPhotoUrl());
1.base-adapter-helper下载地址:
https://github.com/hongyangAndroid/base-adapter-helper
2、使用方法:
private void initDatas() {
mDatas = new ArrayList<Person>();
for (int i = 0; i < Cheeses.NAMES.length; i++) {
Person person = new Person(Cheeses.NAMES[i]);
mDatas.add(person);
Collections.sort(mDatas);
//Collections.sort(mDatas, comparator);
}
}
private void initViews() {
mListView = (ListView) findViewById(R.id.lv_index);
mAdapter.addAll(mDatas);
mListView.setAdapter(mAdapter);
}
private QuickAdapter<Person> mAdapter = new QuickAdapter<Person>(this, R.layout.item_quickindex) {
@Override
protected void convert(BaseAdapterHelper helper, Person item) {
//开始分组
String str = null;
String currentLetter = item.getPinyin().charAt(0) + "";
// 根据上一个首字母,决定当前是否显示字母
int position = helper.getPosition();
if(position == 0){
str = currentLetter;
}else {
// 上一个人的拼音的首字母
String preLetter = mDatas.get(position - 1).getPinyin().charAt(0) + "";
if(!TextUtils.equals(preLetter, currentLetter)){
str = currentLetter;
}
}
// 根据str是否为空,决定是否显示索引栏
helper.setVisible(R.id.tv_index, str == null ? false:true);
helper.setText(R.id.tv_index, currentLetter);
helper.setText(R.id.tv_name, item.getName());
}
};