Android三种方式实现ProgressBar自定义圆形进度条
程序员文章站
2024-02-23 22:01:34
进度条样式在项目中经常可以见到,下面小编给大家分享android三种方式实现progressbar自定义圆形进度条。
android进度条有4种风格可以使用。
默认值是...
进度条样式在项目中经常可以见到,下面小编给大家分享android三种方式实现progressbar自定义圆形进度条。
android进度条有4种风格可以使用。
默认值是progressbarstyle。
设置成progressbarstylesmall后,图标变小。
设置成progressbarstylelarge后,图标变大
设置成progressbarstylehorizontal后,变成横向长方形。
自定义圆形进度条progressbar的一般有三种方式:
一、通过动画实现
定义res/anim/loading_anim.xml如下:
<?xml version="1.0" encoding="utf-8"?> <animation-list android:oneshot="false" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:duration="150" android:drawable="@drawable/loading_blue_16_f0" /> <item android:duration="150" android:drawable="@drawable/loading_blue_16_f1" /> <item android:duration="150" android:drawable="@drawable/loading_blue_16_f2" /> <item android:duration="150" android:drawable="@drawable/loading_blue_16_f3" /> <item android:duration="150" android:drawable="@drawable/loading_blue_16_f4" /> <item android:duration="150" android:drawable="@drawable/loading_blue_16_f5" /> <item android:duration="150" android:drawable="@drawable/loading_blue_16_f6" /> <item android:duration="150" android:drawable="@drawable/loading_blue_16_f7" /> <item android:duration="150" android:drawable="@drawable/loading_blue_16_f8" /> <item android:duration="150" android:drawable="@drawable/loading_blue_16_f9" /> <item android:duration="150" android:drawable="@drawable/loading_blue_16_f10" /> <item android:duration="150" android:drawable="@drawable/loading_blue_16_f11" /> <item android:duration="150" android:drawable="@drawable/loading_blue_16_f12" /> <item android:duration="150" android:drawable="@drawable/loading_blue_16_f13" /> <item android:duration="150" android:drawable="@drawable/loading_blue_16_f14" /> <item android:duration="150" android:drawable="@drawable/loading_blue_16_f15" /> <item android:duration="150" android:drawable="@drawable/loading_blue_16_f16" /> <item android:duration="150" android:drawable="@drawable/loading_blue_16_f17" /> </animation-list>
在layout文件中引用如下:
<progressbar android:id="@+id/progressbar1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:layout_marginbottom="20dip" android:layout_margintop="20dip" android:indeterminate="false" android:indeterminatedrawable="@anim/loading_anim" />
二、通过自定义颜色实现
定义res/drawable/loading_color.xml如下:
<?xml version="1.0" encoding="utf-8"?> <rotate xmlns:android="http://schemas.android.com/apk/res/android" android:fromdegrees="0" android:pivotx="50%" android:pivoty="50%" android:todegrees="360" > <shape android:innerradiusratio="3" android:shape="ring" android:thicknessratio="8" android:uselevel="false" > <gradient android:centercolor="#ffdc35" android:centery="0.50" android:endcolor="#ce0000" android:startcolor="#ffffff" android:type="sweep" android:uselevel="false" /> </shape> </rotate>
在layout文件中引用如下:
<progressbar android:id="@+id/progressbar2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:indeterminate="false" android:indeterminatedrawable="@drawable/loading_color" />
三、使用一张图片进行自定义
定义res/drawable/loading_img.xml如下:
<?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android" > <item> <rotate android:drawable="@drawable/exchange_loading" android:fromdegrees="0.0" android:pivotx="50.0%" android:pivoty="50.0%" android:todegrees="360.0" /> </item> </layer-list>
在layout文件中引用如下:
<progressbar android:id="@+id/progressbar3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:indeterminate="false" android:indeterminatedrawable="@drawable/lodaing_img" />
以上内容是小编给大家分享的android三种方式实现progressbar自定义圆形进度条,希望对大家有所帮助!
上一篇: 28335的CAN总线学习笔记
下一篇: c#实现metro文件压缩解压示例
推荐阅读
-
Android三种方式实现ProgressBar自定义圆形进度条
-
Android编程基于自定义View实现绚丽的圆形进度条功能示例
-
Android编程实现自定义ProgressBar样式示例(背景色及一级、二级进度条颜色)
-
Android自定义控件实现圆形进度条
-
Android编程基于自定义View实现绚丽的圆形进度条功能示例
-
Android实现带数字的圆形进度条(自定义进度条)
-
Android编程实现自定义ProgressBar样式示例(背景色及一级、二级进度条颜色)
-
Android自定义控件实现圆形进度条
-
Android自定义View的三种实现方式总结
-
Android实现带数字的圆形进度条(自定义进度条)