一、前言
在 Android 开发中,ProgressBar
是一个非常常见且功能强大的控件,用于向用户反馈操作的进度。虽然它的基础用法简单,但对于进阶开发者来说,如何通过自定义动画、插值器、样式和逻辑控制来提升用户体验,是一个值得深入研究的方向。
本文将带你从 基本使用入手,逐步过渡到 自定义渐变色、动画效果、进度曲线优化 等进阶内容,并提供完整的代码示例。适合已经掌握基础知识,希望进一步提升开发能力的 Android 开发者阅读。
二、ProgressBar 的基本使用
1. 在 XML 中定义 ProgressBar
<ProgressBarandroid:id="@+id/progressBar"style="?android:attr/progressBarStyleHorizontal"android:layout_width="match_parent"android:layout_height="20dp"android:max="100"android:progress="30"/>
style="?android:attr/progressBarStyleHorizontal"
表示这是一个水平进度条。android:max="100"
设置最大值为100。android:progress="30"
初始显示30%。
2. 在 Java/Kotlin 中动态设置进度
ProgressBar progressBar = findViewById(R.id.progressBar);
progressBar.setProgress(70);
三、自定义进度条样式(颜色、背景)
默认的进度条颜色可能无法匹配你的应用风格,因此我们可以自定义其外观。
自定义 Drawable:res/drawable/custom_progress.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><solid