android实现圆形的ProgressBar停止转动

这篇具有很好参考价值的文章主要介绍了android实现圆形的ProgressBar停止转动。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

先来看看 ProgressBar 的常用属性:

  • android:max:设置 ProgressBar 的最大值,默认是 100。
  • android:indeterminate:设置是否开启不确定模式。true 表示进度条会展示实际的进度;而 false 表示在加载时会无限循环展示 loading 动画。
  • android:minHeight:设置最小高度。
  • android:minWidth:设置最小宽度。
  • android:progress:设置进度条的当前进度。
  • style:设置进度条的样式,默认情况下展示一个循环转圈的 loading 样式,而如果需要设置其他样式,就要用的 style 属性,比如通过设置styleandroid:attr/progressBarStyleHorizontal可以设置成横向进度条的样式。
  • android:progressDrawable:设置进度条对应的 Drawable 对象的样式
  • android:secondaryProgress:设置二级进度条的进度。看视频会有两级进度条,一级是播放进度,二级是缓冲进度。

值得注意的是max和progress属性只有在水平进度的时候才有效,ProgressBar默认是圆形无限循环loading的样式,在圆形样式的情况下,max和progress是无效的。

当然如果想要开发圆形样式并且具有progress进度显示的进度条,也是可以的。只需要按以下步骤:

1、首先我们的目的是想要使圆形的进度条具有水平进度条可以显示进度的功能,因此需要使用style属性将进度条的样式改成水平进度条的样式

style="?android:attr/progressBarStyleHorizontal"

2、有了水平进度条progress和max就有效了,但是还需要修改水平进度条的progressDrawable,让水平进度条显示为圆环形

  1. 在res/drawable目录下新建widget_pg_style.xml文件,文件名可以自取。在此文件中定义水平进度条的显示样式。
    <?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
                android:innerRadiusRatio="3.5"
                android:shape="ring"
                android:useLevel="false"
                android:type="sweep"
                android:thicknessRatio="12.0">
                <solid android:color="@color/widget_track"/>
            </shape>
        </item>
        <item android:id="@android:id/progress">
            <rotate
                android:pivotX="50%"
                android:pivotY="50%"
                android:fromDegrees="-90"
                android:toDegrees="-90">
                <shape
                    android:innerRadiusRatio="3.5"
                    android:shape="ring"
                    android:angle="0"
                    android:type="sweep"
                    android:thicknessRatio="12.0">
                    <solid android:color="#44aa00"/>
                </shape>
            </rotate>
        </item>
    </layer-list>
  2. 设置progressDrawable属性值为widget_pg_style
    android:progressDrawable="@drawable/widget_pg_style"

完整的ProgressBar代码,关键就是上述的progressDrawable和style属性

<ProgressBar
            android:id="@+id/progressbar"
            android:layout_width="0dp"
            android:layout_height="50dp"
            android:layout_weight="1"
            android:layout_marginRight="15dp"
            android:max="100"
            android:progress="50"
            android:indeterminate="false"
            android:progressDrawable="@drawable/widget_pg_style"
            style="?android:attr/progressBarStyleHorizontal"
            />

完成上述步骤后得到的就是一个可以自由设置进度的圆形进度条了,而不是一直无限加载的圆形加载进度了。文章来源地址https://www.toymoban.com/news/detail-401537.html

到了这里,关于android实现圆形的ProgressBar停止转动的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 语音交互(第一篇)_ 呼唤STM32让舵机转动和停止

    语音交互(第一篇)_ 呼唤STM32让舵机转动和停止

    嵌入式之路,贵在日常点滴                                                                 ---阿杰在线送代码 目录 一、 LD3320模块介绍(类似于耳朵) 1、简介 2、 有三个工作模式 3、板上管脚资源 二、MP3模块(类似于嘴巴) 1、简介 2、板上管脚资源  3、 MP3模块

    2024年02月01日
    浏览(10)
  • Android studio实现圆形进度条

    Android studio实现圆形进度条

    参考博客 效果图 MainActivity CircleProgressBar activity_main.xml value/attrs.xml

    2024年02月10日
    浏览(12)
  • Android开发——控件EditText, 2.获取EditText输入的数据,通过按钮点击实现,ImageView控件,缩放类型,控件ProgressBar,常用属性详解,进度条设置

    Android开发——控件EditText, 2.获取EditText输入的数据,通过按钮点击实现,ImageView控件,缩放类型,控件ProgressBar,常用属性详解,进度条设置

    1. android : hint 输入提示 2. android : textColorHint  输入提示文字的颜色 3. android : inputType  输入类型 4. android : drawableXxxx 在输入框的指定方位添加图片 5. android : drawablePadding  设置图片与输入内容的间距 6. android : paddingxxxx  设置内容与边框的间距 7. android : backgrou

    2024年02月07日
    浏览(12)
  • [Android]ProgressBar进度条

    [Android]ProgressBar进度条

    ProgressBar ProgressBar是进度条控件,ProgressBar的应用场景很多,比如用户登录时,后台发送请求,以及进行等待服务器返回信息等一些比较耗时的操作。这个时候如果没有提示,用户可能会以为程序崩溃了或手机死机了,会大大降低用户体验,所有在需要进行耗时操作的地方,添

    2024年02月15日
    浏览(11)
  • Android 之 ProgressBar (进度条)

    Android 之 ProgressBar (进度条)

    本节给大家带来的是Android基本UI控件中的ProgressBar(进度条),ProgressBar的应用场景很多,比如 用户登录时,后台在发请求,以及等待服务器返回信息,这个时候会用到进度条;或者当在进行一些比较 耗时的操作,需要等待一段较长的时间,这个时候如果没有提示,用户可能会

    2024年02月14日
    浏览(15)
  • Android 基础知识4-3.7 ProgressBar(进度条)详解

    Android 基础知识4-3.7 ProgressBar(进度条)详解

    一、简介         ProgressBar(进度条)是UI界面中一种非常实用的组件,通常用于向用户像是某个耗时操作完成的百分比。进度条可动态地显示进度,因此避免长时间地执行某个操作时,让用户感觉程序失去了响应,从而更好地提高用户界面的友好性。也是为数不多的直接

    2024年02月16日
    浏览(16)
  • Android ProgressBar设置成横向进度条并自定义进度条颜色

    如何将ProgressBar设置成横向进度条并修改进度条颜色? 设置为横向进度条: style=\\\"@style/Widget.AppCompat.ProgressBar.Horizontal\\\" 设置进度条颜色: 自定一个文件名为progress_style_h_scene的drawable 将自定义的drawable设置到ProgressBar的android:progressDrawable属性中

    2024年02月13日
    浏览(7)
  • 有理数域上lamada矩阵(方阵)化标准形的实现

    有理数域上lamada矩阵(方阵)化标准形的实现

    前言: 首先介绍一下lamada矩阵,其为高等代数或线性代数的内容。其中将 λ-矩阵 化成标准形在这门课中占据着举足轻重的地位。lamada矩阵即λ-矩阵,亦称 多项式矩阵 ,是以多项式为元素的矩阵。而今天要研究的就是在 有理数域上 的多项式组成的矩阵。而 数字矩阵 是λ-矩

    2024年02月05日
    浏览(9)
  • Android 12.0 系统settings详情页 卸载修改为停止,禁止卸载app功能实现

    在12.0的系统rom定制化功能的开发过程中,在一些系统预安装的app中,在Launcher3中可以通过拖拽然后卸载,这个限制卸载可以在前面的博客中禁止卸载这些预安装的app, 然后就需要在系统Settings详情页来禁止app的卸载,把卸载修改为停止功能,所以就需要从系统应用详情页来寻

    2024年02月10日
    浏览(8)
  • android:绘制圆角矩形,椭圆形

    一、前言:在我们工作中会有绘制不同圆角的按钮图形,具体该怎么做之前也只是了解个大概,今天看了一节课,听完老师讲的我自己又写了一遍,记录一下。 二、代码展示: 首先先创建一个DrawableShapeActivity 相对应的xml 以及两个形状xml:shape_oval_rose.xml shape_ract_gold.xml

    2024年02月06日
    浏览(11)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包