1.定义一个全局的变量(为了取消加载框的时候找得到它)
//加载框变量
private ProgressDialog progressDialog;
2.显示加载框
public void showProgressDialog(Context mContext, String text) {
if (progressDialog == null) {
progressDialog = new ProgressDialog(mContext);
progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
}
progressDialog.setMessage(text); //设置内容
progressDialog.setCancelable(false);//点击屏幕和按返回键都不能取消加载框
progressDialog.show();
//设置超时自动消失
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
//取消加载框
if(dismissProgressDialog()){
//超时处理
}
}
}, 60000);//超时时间60秒
}
3.隐藏加载框
public Boolean dismissProgressDialog() {
if (progressDialog != null){
if (progressDialog.isShowing()) {
progressDialog.dismiss();
return true;//取消成功
}
}
return false;//已经取消过了,不需要取消
}
4.调用方法
showProgressDialog(this, "加载中。。");