Android利用layer-list实现ProgressBar顺时针及逆时针旋转

布局文件如下

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <ProgressBar
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:indeterminateBehavior="repeat"
        android:indeterminateDrawable="@drawable/progress_big" /> 


</RelativeLayout>

progress_big.xml文件:

<!--多图层图片-->
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item >
        <rotate android:drawable="@mipmap/spinner_big_inner" android:fromDegrees="1080" android:toDegrees="0"></rotate>
    </item>

    <item >
        <rotate android:drawable="@mipmap/spinner_big_outer" android:fromDegrees="0" android:toDegrees="720"></rotate>
    </item>
</layer-list>

上面引用的图片是这两张:

spinner_big_inner.png
spinner_big_outer.png

layer-list具有图层叠加的效果,所以只要一张图片逆时针旋转,一张图片顺时针旋转即可实现这种效果:

newloading.gif
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 转载:http://www.jianshu.com/p/32fcadd12108 每个UIView有一个伙伴称为l...
    F麦子阅读 6,402评论 0 13
  • 每个UIView有一个伙伴称为layer,一个CALayer。UIView实际上并没有把自己画到屏幕上;它绘制本身...
    shenzhenboy阅读 3,177评论 0 17
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌。在这里你可以看...
    F麦子阅读 5,164评论 5 13
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,295评论 4 61