android开发--ProgressBar 颜色/样式的设置
2017-08-22 18:11
676 查看
有时候,调用系统原生ProgressBar有时样式不能满足需求,这里介绍如何简单修改进度条的样式。
布局文件代码:
[html] view
plain copy
<ProgressBar
android:id="@+id/progressbar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:indeterminateDrawable="@drawable/progressbar"
/>
此XML文件新建在drawable目录下:文件名为:progressbar
[html] view
plain copy
<?xml version="1.0" encoding="utf-8"?>
<animated-rotate
xmlns:android="http://schemas.android.com/apk/res/android"
android:pivotX="50%" android:pivotY="50%"
android:fromDegrees="0"
android:toDegrees="360">
<shape
android:shape="ring"
android:innerRadiusRatio="3"
android:thicknessRatio="8"
android:useLevel="false">
<gradient
android:type="sweep"
android:useLevel="false"
android:startColor="#6BD3FF"
android:centerColor="#FF7121"
android:centerY="0.50"
android:endColor="#FFFF00" />
</shape>
</animated-rotate>
至于设置水平进度条的颜色:
[html] view
plain copy
<LinearLayout android:gravity="center"
android:orientation="horizontal"
android:padding="10dp"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<SeekBar android:layout_gravity="center" android:id="@android:id/progress"
android:paddingLeft="8.0dip" android:paddingRight="8.0dip"
android:paddingBottom="4.0dip" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:maxHeight="2.0px"
android:progressDrawable="@drawable/progressbar_drawable" android:minHeight="2.0px"
android:thumb="@drawable/seekbar_thumb" style="?android:attr/progressBarStyleHorizontal" />
</LinearLayout>
progressbar_drawable.xml如下:
[html] view
plain copy
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background">
<shape>
<corners android:radius="2.0dip" />
<gradient android:startColor="#ff000000" android:centerColor="#ff000000" android:endColor="#ff000000" android:angle="270.0" android:centerY="2.0" />
</shape>
</item>
<item android:id="@android:id/progress">
<clip>
<shape>
<corners android:radius="2.0dip" />
<gradient android:startColor="#ff33b5e5" android:centerColor="#ff33b5e5" android:endColor="#ff33b5e5" android:angle="270.0" android:centerY="2.0" />
</shape>
</clip>
</item>
</layer-list>
参考:http://blog.csdn.NET/mars2639/article/details/6620836
布局文件代码:
[html] view
plain copy
<ProgressBar
android:id="@+id/progressbar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:indeterminateDrawable="@drawable/progressbar"
/>
此XML文件新建在drawable目录下:文件名为:progressbar
[html] view
plain copy
<?xml version="1.0" encoding="utf-8"?>
<animated-rotate
xmlns:android="http://schemas.android.com/apk/res/android"
android:pivotX="50%" android:pivotY="50%"
android:fromDegrees="0"
android:toDegrees="360">
<shape
android:shape="ring"
android:innerRadiusRatio="3"
android:thicknessRatio="8"
android:useLevel="false">
<gradient
android:type="sweep"
android:useLevel="false"
android:startColor="#6BD3FF"
android:centerColor="#FF7121"
android:centerY="0.50"
android:endColor="#FFFF00" />
</shape>
</animated-rotate>
至于设置水平进度条的颜色:
[html] view
plain copy
<LinearLayout android:gravity="center"
android:orientation="horizontal"
android:padding="10dp"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<SeekBar android:layout_gravity="center" android:id="@android:id/progress"
android:paddingLeft="8.0dip" android:paddingRight="8.0dip"
android:paddingBottom="4.0dip" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:maxHeight="2.0px"
android:progressDrawable="@drawable/progressbar_drawable" android:minHeight="2.0px"
android:thumb="@drawable/seekbar_thumb" style="?android:attr/progressBarStyleHorizontal" />
</LinearLayout>
progressbar_drawable.xml如下:
[html] view
plain copy
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background">
<shape>
<corners android:radius="2.0dip" />
<gradient android:startColor="#ff000000" android:centerColor="#ff000000" android:endColor="#ff000000" android:angle="270.0" android:centerY="2.0" />
</shape>
</item>
<item android:id="@android:id/progress">
<clip>
<shape>
<corners android:radius="2.0dip" />
<gradient android:startColor="#ff33b5e5" android:centerColor="#ff33b5e5" android:endColor="#ff33b5e5" android:angle="270.0" android:centerY="2.0" />
</shape>
</clip>
</item>
</layer-list>
参考:http://blog.csdn.NET/mars2639/article/details/6620836
相关文章推荐
- android开发之ProgressBar的样式设置汇总
- android的ProgressBar设置为水平样式
- android开发之listview的样式设置汇总
- 【Android 开发教程】设置Activity的样式和主题
- android开发之listview的样式设置汇总
- Android 设置ProgressBar 的颜色
- 改变Android ProgressBar样式颜色
- Android学习札记7:ProgressBar水平进度条的颜色设置
- Android中圆形和条形ProgressBar设置颜色
- android:为TextView添加样式——下划线,颜色,设置链接样式及前背景色
- android 颜色收集及部分gridview样式设置
- Android UI --- 设置ProgressBar的颜色
- android 设置Spinner文字标题颜色 字体大小样式
- Android 之LayerDrawable层叠样式layer-list及自定义颜色ProgressBar
- Android笔记: ProgressBar 圆形进度条颜色的设置
- android 设置progressbar的背景颜色
- android 设置Spinner文字标题颜色 字体大小样式
- Android 程式开发:(一)详解Activity —— 1.2设置样式和主题
- Android 之LayerDrawable层叠样式layer-list及自定义颜色ProgressBar
- Android学习札记6:ProgressBar圆形进度条的颜色设置