1,利用Timer进行倒计时操作10秒后执行。
2,利用ProgressDialog (pd)执行后,pd.isShowing();方法检查是否正在执行。
3,利用Handler进行关闭界面的操作。
样例:
Handler handler = new Handler(){
@Override
public void handleMessage(Message msg){
case TIMEROUT:
Toast.makeText(context, "10秒后还在运行pd,关闭当前Activity!", 0).show();
Activity.this.finish();
}
};
Timer tr = new Timer();
TimerTask tt = new TimerTask(){
@Override
public void run() {
if(pdg.isShowing()){
pdg.dismiss();
Message msg = new Message();
msg.what = TIMEROUT;
mHandler.sendMessage(msg);
}
}
};
tr.schedule(tt,10000);
ProgressDialog pd = new ProgressDialog(context);
pd.setTitle(title);
pd.setMessage(msg);
pd.setCancelable(cancelable);
pd.show();