[英]ProgressDialog dismissal in android
當我單擊列表項時,我想打開一個ProgressDialog,它打開了Web服務所單擊項的數據。 需要出現ProgressDialog,直到單擊的項的WebContent被打開。
我知道使用Progress Dialog的代碼,但我不知道如何解雇它。
我聽說Handler將用於解雇Progress Dialog,但我沒有找到最終使用Handler的任何有價值的例子。
任何人都可以告訴我如何使用處理程序來關閉進度對話框?
謝謝,大衛
嗨,這就是你想要的
public void onClick(View v)
{
mDialog = new ProgressDialog(Home.this);
mDialog.setMessage("Please wait...");
mDialog.setCancelable(false);
mDialog.show();
new Thread(new Runnable()
{
@Override
public void run()
{
statusInquiry();
}
}).start();
}
這是被調用的web webservice
void statusInquiry()
{
try
{
//calling webservice
// after then of whole web part you will send handler a msg
mHandler.sendEmptyMessage(10);
}
catch (Exception e)
{
mHandler.sendEmptyMessage(1);
}
}
這里是處理程序代碼
Handler mHandler = new Handler()
{
public void handleMessage(android.os.Message msg)
{
super.handleMessage(msg);
switch (msg.what)
{
case 10:
mDialog.dismiss();
break;
}
}
}
};
一個解決方案可能是這樣的:
ProgressDialog progressDialog = null;
// ...
progressDialog = ProgressDialog.show(this, "Please wait...", true);
new Thread() {
public void run() {
try{
// Grab your data
} catch (Exception e) { }
// When grabbing data is finish: Dismiss your Dialog
progressDialog.dismiss();
}
}.start();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.