最近Androidで作業していたときに、非常に深刻な問題を発見しました。ログインしたり、ネットワークにデータを要求してページを読み込んだりすると、インターフェースがデッドロックのように動かなくなり、エクスペリエンスが非常に悪くなります。このとき、私はそれについて考えました。ウェブページの読み込みレイヤーとマスクレイヤーを検索して検索しました。最後に、コードがほとんどない便利で簡潔なマスクレイヤーを見つけました。
レンダリングは次のとおりです。
繰り返しますが、コードは非常に小さいです。また、コードを直接カプセル化しました
。
import android.app.Activity;
import android.app.ProgressDialog;
public class MaskUtil {
/**
* 遮罩层
* @param message 遮罩层的文字显示
* @param mActivity 使用的activity
*/
public static ProgressDialog showProgressDialog(String message, Activity mActivity) {
ProgressDialog mProgressDialog = null;
if (mProgressDialog == null) {
mProgressDialog = new ProgressDialog(mActivity);
mProgressDialog.setCanceledOnTouchOutside(false);
mProgressDialog.setCancelable(false);
}
mProgressDialog.setMessage(message);
if (!mProgressDialog.isShowing()) {
mProgressDialog.show();
}
return mProgressDialog;
}
}
使い方:
//就是这样一句代码就可以了
private ProgressDialog progressDialog;
//显示遮罩层
progressDialog = MaskUtil.showProgressDialog("登錄中",mContextActivity);
//最后是放在全局变量中,非常方便
//关闭遮罩层
progressDialog.dismiss();