![](/img/trans.png)
[英]How to display 'thinking' image while Java method is running on Android app
[英]Display loading dialog while running method in Android?
我有一個方法設置,運行大約需要3-5秒(因為它在網上做了一些事情),我想顯示一個加載對話框,但我無法弄清楚如何做到這一點,我試着在我打電話之前啟動加載dialod然后該方法試圖在這之后立即解雇它:
dialog.show();
myMethod();
dialog.cancel();
但這沒用,有沒有人有任何建議?
AsyncTask是我的Favouite但你也可以使用Handlers :)
花時間去瀏覽這個不錯的博客 。
以下代碼段將為您提供幫助。
package org.sample;
import android.app.Activity;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.os.Handler;
public class Hello extends Activity {
private Handler handler;
private ProgressDialog dialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
dialog = new ProgressDialog(this);
dialog.setMessage("Please Wait!!");
dialog.setCancelable(false);
dialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
dialog.show();
new Thread() {
public void run() {
// Do operation here.
// ...
// ...
// and then mark handler to notify to main thread
// to remove progressbar
//
// handler.sendEmptyMessage(0);
//
// Or if you want to access UI elements here then
//
// runOnUiThread(new Runnable() {
//
// public void run() {
// Now here you can interact
// with ui elemements.
//
// }
// });
}
}.start();
handler = new Handler() {
public void handleMessage(android.os.Message msg) {
dialog.dismiss();
};
};
}
}
在UI線程上運行一個持續時間很長的任務是“不,不”。 使用AsyncTask
在后台運行長持續時間任務,並在完成后更新UI。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.