亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

android progressdialog如何更新進度

小樊
81
2024-11-23 04:03:10
欄目: 編程語言

在Android中,要更新ProgressDialog的進度,您需要首先創建一個ProgressDialog實例,然后使用setProgress()方法更新進度。以下是一個簡單的示例:

  1. 首先,在您的Activity中創建一個ProgressDialog實例:
import android.app.ProgressDialog;

public class MainActivity extends AppCompatActivity {
    private ProgressDialog progressDialog;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // 創建一個ProgressDialog實例
        progressDialog = new ProgressDialog(this);
        progressDialog.setCancelable(false); // 設置不可取消
        progressDialog.setMessage("加載中...");
        progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); // 設置水平進度條
        progressDialog.setProgress(0); // 初始化進度為0
    }
}
  1. 在后臺線程中執行耗時操作,并在適當的時候更新進度:
private void performLongRunningTask() {
    new Thread(new Runnable() {
        @Override
        public void run() {
            // 執行耗時操作
            for (int i = 0; i <= 100; i++) {
                final int progress = i;
                runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                        // 更新進度
                        progressDialog.setProgress(progress);
                    }
                });
                try {
                    Thread.sleep(50); // 模擬耗時操作
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }

            // 耗時操作完成后,關閉ProgressDialog
            runOnUiThread(new Runnable() {
                @Override
                public void run() {
                    progressDialog.dismiss();
                }
            });
        }
    }).start();
}
  1. 在需要執行耗時操作的地方調用performLongRunningTask()方法:
button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        // 顯示ProgressDialog
        progressDialog.show();

        // 執行耗時操作
        performLongRunningTask();
    }
});

這樣,當您點擊按鈕時,ProgressDialog將顯示并更新進度。請注意,這個示例使用了runOnUiThread()方法來確保UI更新在主線程中執行。

0
张北县| 南陵县| 闸北区| 搜索| 吴桥县| 拉萨市| 资讯| 凉山| 招远市| 桐乡市| 乐东| 中宁县| 鄂州市| 霞浦县| 河西区| 广昌县| 镇原县| 张家港市| 小金县| 禹城市| 观塘区| 怀宁县| 莱阳市| 贵阳市| 温泉县| 镇宁| 旅游| 扶余县| 莒南县| 濮阳市| 武冈市| 荣成市| 锡林郭勒盟| 汕头市| 社旗县| 天门市| 明水县| 岗巴县| 昌邑市| 馆陶县| 胶南市|