您的位置首页生活百科

android的Progressbar怎么用

android的Progressbar怎么用

的有关信息介绍如下:

android的Progressbar怎么用

android的Progressbar怎么用

在android中,Progressbar可以用来提醒用户某个任务的进度。下面我们来模拟一个下载进度来看一下。

首先我们创建一个按钮来启动一个带有progressbar的提醒。

编写代码为按钮添加一个点击事件。

运行效果。

修改progressbar的风格。

完整的代码。

public void onClick(View v) {

// prepare for a progress bar dialog

progressBar = new ProgressDialog(v.getContext());

progressBar.setCancelable(true);

progressBar.setMessage("File downloading ...");

progressBar.setProgressStyle(ProgressDialog.STYLE_SPINNER);

progressBar.setProgress(0);

progressBar.setMax(100);

progressBar.show();

//reset progress bar status

progressBarStatus = 0;

//reset filesize

fileSize = 0;

new Thread(new Runnable() {

public void run() {

while (progressBarStatus < 100) {

// process some tasks

progressBarStatus = doSomeTasks();

// your computer is too fast, sleep 1 second

try {

Thread.sleep(1000);

} catch (InterruptedException e) {

e.printStackTrace();

}

// Update the progress bar

progressBarHandler.post(new Runnable() {

public void run() {

progressBar.setProgress(progressBarStatus);

}

});

}

// ok, file is downloaded,

if (progressBarStatus >= 100) {

// sleep 2 seconds, so that you can see the 100%

try {

Thread.sleep(2000);

} catch (InterruptedException e) {

e.printStackTrace();

}

// close the progress bar dialog

progressBar.dismiss();

}

}

}).start();

}

});

}

// file download simulator... a really simple

public int doSomeTasks() {

while (fileSize <= 1000000) {

fileSize++;

if (fileSize == 100000) {

return 10;

} else if (fileSize == 200000) {

return 20;

} else if (fileSize == 300000) {

return 30;

}

// ...add your own

}

return 100;

}