昨天做了个梦,梦醒后觉得还是要更努力的学习,所以不多说废话,直接上货。
BlurImageView
效果图:
流程:
实现原理,加载2张图片一张为很小的缩略图,一张为原图,缩略图加载完后做放大模糊处理,然后展开进度条加载原图,原图加载成功后替换缩略图。
How to use?
Grade:
1 2 3 |
dependencies { compile 'com.wingjay:blurimageviewlib:1.1.0' } |
Eclipse:
lib目录下面的3各类Copy进自己的项目就好了
再说下怎么使用这个控件
1 2 3 4 |
.wjj.blurimageview.lib.BlurImageView android:id="@+id/image" android:layout_width="match_parent" android:layout_height="250dp"/> |
直接引用即可,并没有什么自定义的标签(这边补充下,希望预设下尺寸大小,如果使用 wrap_content 会出现小图片一个大小大图片一个大小的情况)
然后就在onCreate方法里获取对象再set一下就好
1 2 3 4 5 6 7 |
blurImageView = (BlurImageView) findViewById(R.id.image); downLoad.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { blurImageView.setFullImageByUrl(IMAGEURL, IMAGEURL1); } }); |
如果需要再同一个控件切换多张图片的就在blurImageView.setFullImageByUrl()方法之前再调用下
public void setBlurFactor(int blurFactor)
方法。
会申请更多的缓存空间,默认是8张
public final static int DEFAULT_BLUR_FACTOR = 8;
如何清楚图片?
调用 控件.clear();
如何修改progress控件的UI?
1 2 3 4 5 6 7 8 9 |
//修改背景色 public void setProgressBarBgColor(int bgColor) { this.loadingCircleProgressView.setProgressBgColor(bgColor); } //修改控件颜色 public void setProgressBarColor(int color) { this.loadingCircleProgressView.setProgressColor(color); } |
例子地址:https://github.com/ddwhan0123/BlogSample/blob/master/BlurImageView.zip