转载:http://www.eoeandroid.com/forum.php?mod=viewthread&tid=76872

一、通过动画实现

定义res/anim/loading.xml如下:

[java] view plaincopy
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <animation-list android:oneshot="false"
  3. xmlns:android="http://schemas.android.com/apk/res/android">
  4. <item android:duration="150" android:drawable="@drawable/loading_01" />
  5. <item android:duration="150" android:drawable="@drawable/loading_02" />
  6. <item android:duration="150" android:drawable="@drawable/loading_03" />
  7. <item android:duration="150" android:drawable="@drawable/loading_04" />
  8. <item android:duration="150" android:drawable="@drawable/loading_05" />
  9. <item android:duration="150" android:drawable="@drawable/loading_06" />
  10. <item android:duration="150" android:drawable="@drawable/loading_07" />
  11. </animation-list>

在layout文件中引用如下:

[java] view plaincopy
  1. <ProgressBar android:id="@+id/loading_process_dialog_progressBar"
  2. android:layout_width="wrap_content" android:layout_height="wrap_content"
  3. android:indeterminate="false" android:indeterminateDrawable="@anim/loading" />

二、通过自定义颜色实现
定义res/drawable/dialog_style_xml_color.xml如下:

[java] view plaincopy
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <rotate xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:pivotX="50%" android:pivotY="50%" android:fromDegrees="0"
  4. android:toDegrees="360">
  5. <shape android:shape="ring" android:innerRadiusRatio="3"
  6. android:thicknessRatio="8" android:useLevel="false">
  7. <gradient android:type="sweep" android:useLevel="false"
  8. android:startColor="#FFFFFF" android:centerColor="#FFDC35"
  9. android:centerY="0.50" android:endColor="#CE0000" />
  10. </shape>
  11. </rotate>

在layout文件中引用如下:

[java] view plaincopy
  1. <ProgressBar android:id="@+id/loading_process_dialog_progressBar"
  2. android:layout_width="wrap_content" android:layout_height="wrap_content"
  3. android:indeterminate="false" android:indeterminateDrawable="@drawable/dialog_style_xml_color" />

三、使用一张图片进行自定义
定义res/drawable/dialog_style_xml_icon.xml如下:

[java] view plaincopy
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
  3. <item>
  4. <rotate android:drawable="@drawable/dialog_progress_round"
  5. android:fromDegrees="0.0" android:toDegrees="360.0" android:pivotX="50.0%"
  6. android:pivotY="50.0%" />
  7. </item>
  8. </layer-list>

在layout文件中引用如下:

[html] view plaincopy
  1. <ProgressBar android:id="@+id/loading_process_dialog_progressBar"
  2. android:layout_width="wrap_content" android:layout_height="wrap_content"
  3. android:indeterminate="false" android:indeterminateDrawable="@drawable/dialog_style_xml_icon" />

main.xml如下:

[html] view plaincopy
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:orientation="vertical" android:layout_width="fill_parent"
  4. android:layout_height="fill_parent" android:gravity="center"
  5. android:background="#FFF">
  6. <Button android:text="@string/anim" android:id="@+id/anim"
  7. android:layout_width="120dip" android:layout_height="wrap_content" />
  8. <Button android:text="@string/color" android:id="@+id/color"
  9. android:layout_width="120dip" android:layout_height="wrap_content" />
  10. <Button android:text="@string/icon" android:id="@+id/icon"
  11. android:layout_width="120dip" android:layout_height="wrap_content" />
  12. </LinearLayout>

之后通过三个按钮将ProgressBar 放在对话框中显示出来就完成了。

 AnimRoundProcessDialog.rar

截图如下:

转载于:https://www.cnblogs.com/cmblogs/p/4409639.html

Android 三种方式实现自定义圆形页面加载中效果的进度条相关推荐

  1. android圆形点击效果,Android 三种方式实现自定义圆形页面加载中效果的进度条

    [实例简介] Android 三种方式实现自定义圆形页面加载中效果的进度条 [实例截图] [核心代码] ad376a86-a9aa-49bc-8cea-321bcff2c0c3 └── AnimRou ...

  2. 记录--Vue自定义指令实现加载中效果v-load(不使用Vue.extend)

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 网站效果演示:ashuai.work:8888/#/myLoad GitHub仓库地址代码:github.com/shuirongshu- ...

  3. 三种方式实现自定义圆形进度条ProgressBar

    2019独角兽企业重金招聘Python工程师标准>>> 一.通过动画实现 定义res/anim/loading.xml如下: [html] view plain copy print ...

  4. 精通Android自定义View(十八)自定义圆形菊花加载转圈效果

    1 效果: 2 源码: public class LoadingView extends View {public LoadingView(Context context) {this(context ...

  5. 精通Android自定义View(十七)自定义圆形鸟巢加载转圈效果

    1 效果图 2 源码: public class LoadingView extends View {public LoadingView(Context context) {this(context ...

  6. android dialog 自定义布局,Android自定义Dialog实现加载对话框效果

    前言 最近开发中用到许多对话框,之前都是在外面的代码中创建AlertDialog并设置自定义布局实现常见的对话框,诸如更新提示等含有取消和删除两个按钮的对话框我们可以通过代码创建一个AlertDial ...

  7. 真是好东西!一组动感的页面加载动画效果

    如果您曾经访问过 Nicolas Zezuka 和 Active Theory 的出色的设计网站,你可能已经注意到在显示新内容之前动感的页面加载动画了.这种风格的动画效果最近非常流行,因此这篇文章想给 ...

  8. css 实现页面加载中等待效果

    <!DOCTYPE html> <html> <head> <title>css实现页面加载中,请稍候效果</title><meta ...

  9. js 写html加载中的效果,基于javascript实现页面加载loading效果

    本文实为大家分享了javascript实现页面加载loading效果,供大家参考,具体内容如下 效果图: 正在载入 正在载入首页,请稍候. var line = "||" var ...

最新文章

  1. 《精通自动化测试框架设计》目录—导读
  2. 百度Apollo无人车能力降维释放,打造智能汽车现在可以像拼乐高
  3. 【深度学习】面向医学图像的病灶分割调研(一)
  4. 只学一点点:我的技术学习策略
  5. binary_search函数
  6. 波形捕捉:(2)创建捕捉设备对象
  7. 原生JS实现移动端模块的左右滑动切换效果,基于vue、stylus
  8. 数据结构---顺序查找和二分查找
  9. 14-Clothes衣服
  10. 如何找到某个方法的声明
  11. Intellij IDEA Cannot resolve symbol XXX 问题解决办法汇总
  12. Markdown 写作类软件 MWeb 和 Ulysses谁更好
  13. poj 1833 排列
  14. 安卓pdf阅读器_2020年双十一有哪些电纸书、电子书阅读器值得买?Kindle、掌阅、文石、科大讯飞哪个好?...
  15. run rhadoop
  16. BP神经网络处理iris数据集(Pytorch实现)
  17. 怎么修改打印机服务器权限,Win7如何设置网络打印机管理权限
  18. mongo异常无法启动-处理方法
  19. QCC3040---system state module
  20. python中的subprocess.Popen()使用

热门文章

  1. 如何在网站建设时正确设置符合SEO优化的元素?
  2. scrapy框架_Scrapy框架学习---Scrapy介绍(一)
  3. 服务器磁盘空间已满但并没有什么文件,win10 D盘没多少文件,但磁盘却满了
  4. jq选中单选框后文本框不可编辑_打开速度最快最强大的PDF免费工具,编辑+阅读功能一体...
  5. AngularJS 1.x 国际化——Angular-translate例子
  6. Kubernetes——基于容器技术的分布式架构领先方案,它的目标是管理跨多个主机的容器,提供基本的部署,维护以及运用伸缩...
  7. influxdb入门——和mongodb一样可以动态增加字段
  8. 1111B - Average Superhero Gang Power
  9. asp.net 利用Global.asax 捕获整个解决方案中的异常错误
  10. 处理视频小工具 -- ffmpeg