我想打开一个ProgressDialog,当我单击打开Web服务中单击项目数据的列表项时。 需要显示ProgressDialog,直到打开点击的物品的WebContent。Android中的ProgressDialog解雇
我知道使用进度对话框的代码,但我不知道如何特别解雇它。
我听说Handler是用来解除进度对话框的,但是我最终没有找到任何有用的Handler的例子。
任何人都可以请告诉我如何使用处理程序来关闭进度对话框?
感谢, 大卫
我想打开一个ProgressDialog,当我单击打开Web服务中单击项目数据的列表项时。 需要显示ProgressDialog,直到打开点击的物品的WebContent。Android中的ProgressDialog解雇
我知道使用进度对话框的代码,但我不知道如何特别解雇它。
我听说Handler是用来解除进度对话框的,但是我最终没有找到任何有用的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服务被称为
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;
}
}
}
};
一个solutiion可能是这样的:
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();
这将导致崩溃如果活动被破坏你的`progressDialog.dismiss(前)`行 – Warpspace 2011-09-29 05:58:52