android 圆形进度条 横向进度条 不确定转圈进度条

1 横向进度条

java 复制代码
           <ProgressBar
                            style="@android:style/Widget.ProgressBar.Horizontal"
                            android:layout_width="match_parent"
                            android:layout_height="wrap_content"
                            android:layout_gravity="center"
                            android:max="100"
                            android:secondaryProgress="60"
                            android:progress="55"
                            android:progressDrawable="@drawable/horizontal_progress_drawable_red" />

horizontal_progress_drawable_red.xml

java 复制代码
<?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>
            <corners android:radius="5px"></corners>
            <solid android:color="@color/redStart"/>
        </shape>
    </item>

    <item android:id="@android:id/secondaryProgress">
        <clip>
            <shape>
                <corners android:radius="2px"></corners>
                <solid android:color="@color/blueEnd"/>
            </shape>
        </clip>
    </item>

    <item android:id="@android:id/progress">
        <clip>
            <shape>
                <corners android:radius="2px"></corners>
                <solid android:color="@color/blueEnd"/>
            </shape>
        </clip>
    </item>

</layer-list>

2 圆形进度条 和第一种是一样的。可以自己控制。

java 复制代码
            <ProgressBar
                android:id="@+id/progress_bar_h"
                style="?android:attr/progressBarStyleHorizontal"
                android:layout_width="500px"
                android:layout_height="500px"
                android:layout_gravity="center"
                android:layout_marginTop="28px"
                android:progressDrawable="@drawable/round_pg_style"
                android:max="100"
                android:progress="1"  />

round_pg_style.xml

java 复制代码
<?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="25.0">
            <solid android:color="@color/dian_color"/>
        </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="25.0">
                <solid android:color="#44aa00"/>
            </shape>
        </rotate>
    </item>
</layer-list>

3 转圈进度条 ,不确定时间

java 复制代码
                    <ProgressBar
                        android:id="@+id/progressBar"
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:layout_marginTop="50px" />

4 下载文件,横向进度条 代码

java 复制代码
        ProgressDialog   progress = new ProgressDialog(context);
                progress.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
                progress.setTitle("");
                progress.setMessage("下载中");
                progress.setIndeterminate(false);//设置为fase等待进度更新,设置为true则左右循环滚动
                progress.setMax(100);
                progress.setCancelable(false);
                progress.show();


在ui里面更新

progress.setProgress(msg.arg1);
相关推荐
hai_android6 小时前
Kotlin / Android 常用函数使用示例手册
android·java·kotlin
hai_android7 小时前
Android MeasureSpec 详解
android·java·kotlin
又见情义8 小时前
RK3568 Android 13 本地 U 盘 OTA 升级实战:基于 RKUpdateService 的完整流程
android
Godikov10 小时前
Android10后台弹窗与APK自动更新
android
又见情义10 小时前
RK3568 Android 13 USB OTG/Host 切换调试经验分享
android
终端安全笔记12 小时前
iOS 27 之后「策略空转」:设备升级不报错,但旧策略不再管它
android·网络·安全·ios·智能手机
JMchen13 小时前
实战案例:实现120fps流畅的渐变进度条
android·kotlin·canvas
敲代码的瓦龙13 小时前
Jetpack?DataBinding!!!
android·java·开发语言·mysql·android-studio
Android-Flutter15 小时前
Compose CompositionLocal 详解
android·compose
三少爷的鞋16 小时前
Kotlin 协程闯关:看代码,猜结果
android