BlurImageView
这原本是一个深度结合了universalImageLoader的高斯模糊载入图片组件,先获取小图铺满控件,并虚化显示给用户,同时获取大图,提供progress显示进度。
但是众所周知,在组件中结合某一特定图片加载库是一件吃力不讨好的事,我已知最好的解决方法是将加载图片接口等放出,由外部在调用时写入加载过程,保证组件和加载框架的解绑。
于是我做了以下改进:
- 将图片加载改至外部
- 将universalImageLoader在外部替代为glide
- 对图片的载入做了更加流畅的处理
后续还可以继续改进,开放出universalImageLoader、fresco、glide的专用扩展组件搭配使用,类似BigImageViewer的FrescoImageLoader和GlideImageLoader。
GridViewPager
这个项目来源于一篇CSDN文章Android 仿美团网,探索使用ViewPager+GridView实现左右滑动查看更多分类的功能的资源下载,但原作者没有将GridViewPager抽象成一个自定义控件,demo中只有GridViewAdapter
、MainActivity
、Model
、ViewPagerAdapter
四个类。
而我按照一般的控件demo原则将GridViewPager独立到一个module中,并分为了GridItemClickListener
、GridItemLongClickListener
、GridViewAdapter
、GridViewPager
、Model
、ViewPagerAdapter
六个类,确保了解耦和可扩展性。
AndroidRubberIndicator
这个控件来自于梁飞老师的开源项目AndroidRubberIndicator
进行了以下改进:
- 使控件按照外部比例进行宽高的等比例调整,并使实现的效果与设计效果图相符
- 增加一个viewPager的例子
- 对控件的savedInstance进行配置,使内部对应用重启进行适应
- 新增属性animDuration
本系列其他文章:
在Github做的那些微小的工作(序)
在Github做的那些微小的工作(1)
在Github做的那些微小的工作(3)