自定义加载动画的两种实现方式

举报
再见孙悟空_ 发表于 2022/01/15 00:03:56 2022/01/15
【摘要】 1.帧动画 方式 动画文件animation.xml <?xml version="1.0" encoding="utf-8"?> <animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:...

1.帧动画 方式

动画文件animation.xml


  
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <animation-list
  3. xmlns:android="http://schemas.android.com/apk/res/android"
  4. android:oneshot="true">
  5. <item android:drawable="@drawable/icon1" android:duration="150"></item>
  6. <item android:drawable="@drawable/icon2" android:duration="150"></item>
  7. <item android:drawable="@drawable/icon3" android:duration="150"></item>
  8. <item android:drawable="@drawable/icon4" android:duration="150"></item>
  9. <item android:drawable="@drawable/icon5" android:duration="150"></item>
  10. <item android:drawable="@drawable/icon6" android:duration="150"></item>
  11. </animation-list>


给imageView设置动画

  


  
  1. <ImageView android:id="@+id/animationIV"
  2. android:layout_width="wrap_content"
  3. android:layout_height="wrap_content"
  4. android:padding="5px"
  5. android:src="@drawable/animation"/>

2.progressbar方式

方式一

ProgressBar 


  
  1. <pre name="code" class="java"><ProgressBar
  2. android:id="@+id/progressBar"
  3. android:layout_width="wrap_content"
  4. android:layout_height="wrap_content"
  5. android:indeterminate="false"
  6. android:indeterminateDrawable="@anim/progress_bar_loading" />


动画 文件progressbar_bar_loading 放在values下的anim中



  
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <animation-list
  3. xmlns:android="http://schemas.android.com/apk/res/android"
  4. android:oneshot="false">
  5. <item
  6. android:duration="250"
  7. android:drawable="@drawable/progress_bar_loading_01" />
  8. <item
  9. android:duration="250"
  10. android:drawable="@drawable/progress_bar_loading_02" />
  11. <item
  12. android:duration="250"
  13. android:drawable="@drawable/progress_bar_loading_03" />
  14. <item
  15. android:duration="250"
  16. android:drawable="@drawable/progress_bar_loading_04" />
  17. <item
  18. android:duration="250"
  19. android:drawable="@drawable/progress_bar_loading_05" />
  20. <item
  21. android:duration="250"
  22. android:drawable="@drawable/progress_bar_loading_06" />
  23. <item
  24. android:duration="250"
  25. android:drawable="@drawable/progress_bar_loading_07" />
  26. </animation-list>

方式二


  
  1. <ProgressBar
  2. android:id="@+id/pull_to_refresh_progress"
  3. android:layout_width="30dip"
  4. android:layout_height="30dip"
  5. android:background="@drawable/all_refresh_logo"
  6. android:indeterminate="true"
  7. android:layout_gravity="center"
  8. android:indeterminateDrawable="@drawable/progress_top_refresh"/>

文件progress_top_refresh


  
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <rotate xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:drawable="@drawable/all_refresh"
  4. android:fromDegrees="0"
  5. android:pivotX="50%"
  6. android:pivotY="50%"
  7. android:toDegrees="360" />

上传用到的两个图片 all_refresh 和 all_refresh_logo

all_refresh.png

all_refresh_logo.png

以上几种都可以实现加载动画效果 ,不过个人更加推荐progressbar方式  更加流畅。
 

欢迎大家加入android开发交流群:454430053

文章来源: wukong.blog.csdn.net,作者:再见孙悟空_,版权归原作者所有,如需转载,请联系作者。

原文链接:wukong.blog.csdn.net/article/details/48678075

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。