android 加载图片进度条,实现微信图片加载显示进度的效果-LoadingProgress

分析从网络上加载图片是一种耗时的操作,当加载的图片体积越大,消耗的时间也会更长。向ImageView添加一个进度条的话,可以起到一定的效果。而在我们Android里面,据我了解,想实现ImageView添加进度条的方法有两种:1.新建一个类extends ImageView,在draw()方法里面画进度。2.可以在你的ImageView外围添加RelativeLayout,然后,在里面加多一个Pr...
摘要由CSDN通过智能技术生成

分析

从网络上加载图片是一种耗时的操作,当加载的图片体积越大,消耗的时间也会更长。向ImageView添加一个进度条的话,可以起到一定的效果。而在我们Android里面,据我了解,想实现ImageView添加进度条的方法有两种:

1.新建一个类extends ImageView,在draw()方法里面画进度。

2.可以在你的ImageView外围添加RelativeLayout,然后,在里面加多一个ProgressBar。

LoadingProgress用的都不是以上两种方法。而是采用了extends Drawable的形式,然后注入到ImageView图层上面。

对比

先从上面第二种来说,在外围嵌套RelativeLayout再放多一个ProgressBar,如果在ListView里面这样来写的话,性能绝对会受到影响,因为多绘制两个控件,Android就要多点耗时时间,内存也会占用。

第一种和我的那种对比的话,我的那种可能会相对占用一点内存,但是相对的,灵活性和扩展性就高了,为什么这样说呢?比如,你有时候需要用到手势缩放这种Extends ImageView的控件,总不可能继承与手势缩放,再重新封装代码对吧?

我的只要是继承于ImageView和可以监听到下载图片进度的回调,都可以实现像QQ和微信那种加载进度条,可以动态的调整圆环大小和字体大小,颜色和其他的。

附上效果图

30fe6c1936e9

这里写图片描述

用法

//用法也是挺简单的,只需要几行代码

CircleProgress progress = new CircleProgress.Builder()

// .....从建造者里面设置你的属性,园底层颜色,进度颜色,字体大小颜色等..

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值