自定义圆形进度条的兑现方式
自定义圆形进度条的实现方式
如何自定义圆形进度条哪,也就是替换一下进度条的图片而已。
从上面可以看出,进度条的样式放在了系统的主题样式里面的,做为系统样式的一部分。
注意:spinner_white_16不一定就是一张纯的图片,有可能是动画。
其实就是
引用的时候就是使用drawble了 当然这样也可以:
引用一张图片
如何自定义圆形进度条哪,也就是替换一下进度条的图片而已。
先分析一下,系统对进度条如何定义的:
咱们一般情况下载布局文件中这么书写:
从上面可以看出,进度条的样式放在了系统的主题样式里面的,做为系统样式的一部分。
再看看这个样式文件如何定义的:
看到这里就知道,引用的图片在这里:<item name="android:indeterminateDrawable">@android:drawable/progress_small_white</item>注意:spinner_white_16不一定就是一张纯的图片,有可能是动画。
从下面的实现方式就能知道spinner_white_16到底是不是图片:在这里明确一下,可以是图片,当然也可以使其他的,请看下面的实现
定义实现:
其实就是
把这个属性指向的资源改为你想要的就可以。
实现的三种方式:
1.指向动画的实现方式
熊猫阅读就是利用这种方式实现的:
看代码:
在res资源文件夹下的anim文件夹下创建一个动画文件:
内容如下:比如名字命名为loading.xml
每个item分别引用一张图片引用就是这样
2.指向用颜色定义的drawable资源:
引用的时候就是使用drawble了 当然这样也可以:
3.引用一个图片
drawable文件:
引用一张图片
最后总结一下,其实引用的里面,都有旋转动画,如果只引用一张图片的话,他不会旋转的。有兴趣的朋友自己可以试一下。也可以看看源码如何实现的。有什么建议请留言。
使用drawable和第二种方式一样。
需要源码的同学,加入这个群:200956440,群共享里有源码。