本文主要介绍自己在android开发中总结的一些公共库,目前包括下拉刷新ListView、可以响应各个方向CompoundDrawables点击操作的TextView、图片缓存、图片SD卡缓存、图片工具类,不断更新,欢迎交流
公共库代码地址:AndroidCommon@GoogleCode或AndroidCommon@Git
对应Demo地址:Demo@GoogleCode或Demo@Git
一、自定义的View
1 下拉刷新的ListView,类似新浪微博客户端下拉刷新效果
使用见:下拉刷新ListView的使用
实现原理见:下拉刷新ListView的实现原理
效果如下:
四张图分别为第一次下拉、第一次释放、第一次刷新中、第二次下拉的效果,其中的文本可以设置。
2 可以自定义CompoundDrawables被点击时的响应的TextView
使用见:可以响应各个方向CompoundDrawables点击操作的TextView的使用
实现原理见:可以响应各个方向CompoundDrawables点击操作的TextView的实现原理
效果如下:
点击最下面的图片响应如上,执行结果为显示“Bottom”的Toast
二、缓存类
1 图片内存缓存
使用见:图片内存缓存的使用
主要特性:使用简单、可自动获取新数据、可序列化、可从文件中恢复、多种缓存清除方式、包含map的大多数接口等。
适用:应用中获取图片较多且图片不大的应用,在微博、花瓣、美丽说、path这类应用中可以起到很好的效果。
2 图片SD卡缓存
使用见:图片SD卡缓存
主要特性:使用简单、可自动获取新数据、可序列化、可从文件中恢复、多种缓存清除方式、包含map的大多数接口等。
适用:应用中获取图片较多且图片较大的情况,在微博、花瓣、美丽说、path这类应用中可以起到很好的效果。
三、工具类
1、ImageUtils——图片工具类
public static byte[] bitmapToByte(Bitmap b) Bitmap转换为byte数组
public static Bitmap byteToBitmap(byte[] b) byte数组转换为Bitmap
public static Bitmap drawableToBitmap(Drawable d) Drawable转换为Bitmap
public static Drawable bitmapToDrawable(Bitmap b) Bitmap转换为Drawable
public static byte[] drawableToByte(Drawable d) Drawable转换为byte数组
public static Drawable byteToDrawable(byte[] b) byte数组转换为Drawable
public static InputStream getInputStreamFromUrl(String imageUrl) 根据imageUrl获得InputStream,需要自己手动关闭InputStream
public static Drawable getDrawableFromUrl(String imageUrl) 根据imageUrl获得Drawable
public static Bitmap getBitmapFromUrl(String imageUrl) 根据imageUrl获得Bitmap
PS:关于公共库的建立以及引用方法见Android 公共库的建立方法
其他android第三方有用库见http://www.cnblogs.com/ctrl2/archive/2011/05/06/2039031.html