Android 移动开发:ProgressBar (水平进度条)
案例目标
这是一个 Android 移动应用开发中使用 ProgressBar(水平进度条) 的简单案例,适合初学者学习。通过点击按钮模拟下载过程,进度条每次前进 10%。本文完整提供 Java 和 XML 源码,适合复制直接使用,并标注了对应的文件名。
一、程序运行效果
打开应用后,页面显示一个水平进度条和一个按钮。点击按钮后,进度条会每次递增 10%,模拟一个“下载”过程。
二、布局文件代码
文件名:activity_main.xml
代码语言:XML
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context=".MainActivity"android:orientation="vertical"><ProgressBarandroid:id="@+id/pb_1"style="?android:attr/progressBarStyleHorizontal"android:max="100"android:layout_width="300dp"android:layout_height="wrap_content"android:layout_marginTop="20dp"/><Buttonandroid:id="@+id/btn_1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="模拟下载"android:layout_marginTop="10dp"/>
</LinearLayout>
三、Java 逻辑代码
文件名:MainActivity.java
代码语言:Java
package com.example.demo6;import androidx.appcompat.app.AppCompatActivity;
import android.annotation.SuppressLint;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ProgressBar;public class MainActivity extends AppCompatActivity {private ProgressBar pb_1;private Button btn_1;@SuppressLint("MissingInflatedId")@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);pb_1 = findViewById(R.id.pb_1);btn_1 = findViewById(R.id.btn_1);btn_1.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {int progress = pb_1.getProgress();progress += 10;if (progress <= 100) {pb_1.setProgress(progress);}}});}
}
四、小结
这个案例帮助大家学习了如何使用 ProgressBar 显示水平进度,并通过按钮控制其进度。适合用于文件下载、上传等进度展示场景。