本文主要是介绍Android中ProgressBar样式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Android系统已经被各大厂商改的面目全非,各种系统组件在不同手机上显示的效果完全不同,现在要想在开发中想要保持统一的界面风格,必须全部修改系统组件的样式,现在我们需要修改系统默认的ProgressBar
,就Android系统本身来说,不同的版本组件的样式也不同。
系统中ProgressBar样式
找到android-sdk
目录下的platforms\android-15\data\res\values
中的styles.xml
,然后查找ProgressBar,可以发现
<style name="Widget.ProgressBar"><item name="android:indeterminateOnly">true</item><item name="android:indeterminateDrawable">@android:drawable/progress_medium_white</item><item name="android:indeterminateBehavior">repeat</item><item name="android:indeterminateDuration">3500</item><item name="android:minWidth">48dip</item><item name="android:maxWidth">48dip</item><item name="android:minHeight">48dip</item><item name="android:maxHeight">48dip</item></style>
android:indeterminateDrawable
的值为@android:drawable/progress_medium_white
,找到drawable目录下的progress_medium_white.xml,打开
<?xml version="1.0" encoding="utf-8"?>
<animated-rotate xmlns:android="http://schemas.android.com/apk/res/android"android:drawable="@drawable/spinner_white_48"android:pivotX="50%"android:pivotY="50%"android:framesCount="12"android:frameDuration="100" />
就是一个简单的spinner_white_48.png的旋转动画
自定义android:indeterminateDrawable
的值
旋转动画
<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"android:pivotX="50%"android:pivotY="50%"android:fromDegrees="0"android:toDegrees="360"><bitmap
android:src="@mipmap/icon_timeline_stop_blue"android:antialias="true"android:filter="true"></bitmap>
</rotate>
然后
<ProgressBar
android:layout_width="wrap_content"android:layout_height="wrap_content"android:indeterminateDrawable="@drawable/loading_anim"android:id="@+id/progressBar" />
即可制作简单的旋转样式的的ProgressBar
帧动画
还有一种样式的为帧动画
,这里有一点需要注意的
两个图片,制作帧动画
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"android:oneshot="false"><item android:duration="100"><clip
android:clipOrientation="horizontal"android:drawable="@mipmap/kaoyan_tip_f1"android:gravity="left" /></item><item android:duration="100"><clip
android:clipOrientation="horizontal"android:drawable="@mipmap/kaoyan_tip_f2"android:gravity="left" />
</item></animation-list>
需要注意的是,需要使用
clip
节点来指定android:clipOrientation
和android:gravity="left"
,否则可能出现不同屏幕显示不完整的情况
这篇关于Android中ProgressBar样式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!