ListView Adapter优化 实例
private HashMap<String, SoftReference<Drawable>> imageCache; public AsyncImageLoader() { imageCache = new HashMap<String, SoftReference<Drawable>>(); } public Drawable loadDrawable(final String imageUrl, final ImageCallback imageCallback) { //从缓存中检测是否存在 if (imageCache.containsKey(imageUrl)) { SoftReference<Drawable> softReference = imageCache.get(imageUrl); Drawable drawable = softReference.get(); if (drawable != null) { return drawable; } } final Handler handler = new Handler() { @Override public void handleMessage(Message message) { imageCallback.imageLoaded((Drawable) message.obj, imageUrl); } }; //缓存中没有则从服务器下载 new Thread() { @Override public void run() { Drawable drawable = loadImageFromUrl(imageUrl); imageCache.put(imageUrl, new SoftReference<Drawable>(drawable)); Message message = handler.obtainMessage(0, drawable); handler.sendMessage(message); } }.start(); return null; } public static Drawable loadImageFromUrl(String url) { Drawable drawable = null; //根据url从服务器下载图片 return drawable; } public interface ImageCallback { public void imageLoaded(Drawable imageDrawable, String imageUrl); } }
- 最常用的Java设计之一 观察者模式 在android中的实例 ListView Adapter机制
- 自定义adapter的基础上Listview优化方案以及几个小错误(checkbox吃掉点击事件以及对象重复问题)
- ListView的自定义Adapter的性能优化
- BaseAdapter深入学习,不规则listview,ListView加载性能优化ViewHolder
- Android--Adapter深入理解及ListView优化
- Android杂谈--ListView之BaseAdapter的使用和优化
- ListView 适配器(Adapter)优化
- 一个利用convertView的adapter,可以优化ListView。
- [ListView]Android开发之ListView 适配器(Adapter)优化
- ListView 编程: 如何优化自定义 Adapter
- BaseAdapter中的ConverView的作用和ListView的优化
- 实例讲解Android app开发中ListView的基本使用及优化
- 复杂listView的adapter的优化
- Listview Adapter 优化总结
- Android开发之ListView 适配器(Adapter)优化
- 利用convertView优化ListView和GirdView的性能 (Adapter的使用)
- Android开发之ListView 适配器(Adapter)优化
- SimpleAdapter,Android ListView使用BaseAdapter与ListView的优化,SQL命令
- Andorid ListView和Adapter优化
- ListView重写Adapter优化上下滚动响应速度