Android ListView 优化 缓存 getContext()
在adapter中 创建 class 类 类似实体类 大家应该都知道这么做
1: 缓存
class Holder {
LinearLayout ll_type1;
RelativeLayout ll_type2;
TextView tv_name, tv_name2, tv_time, tv_time2;
ImageView iv_img1, iv_img2, iv_img3, iv_img4;
}
在adapter getView中
@Override
public View getView(int position, View convertView, ViewGroup parent) {
Holder holder = null;
if (convertView == null) {
holder = new Holder();
convertView = LayoutInflater.from(parent.getContext()).inflate(
R.layout.item_affairs, null);
holder.ll_type1 = (LinearLayout) convertView
.findViewById(R.id.ll_type1);
} else {
holder = (Holder) convertView.getTag();
}
return convertView;
}
2:优化
parent.getContext() 获取getContext
就不用再外面的传context进来
如果用Bitmap 需要释放
3:体验感
加载图片的时候可以写在 convertView 创建里面 这样就不会过多的请求 浪费流量 满屏上拉或者下拉 的时候就不会再加载图片
页面图片比较多的时候 可以在litView滑动的时候禁止加载图片