Androidでユーザーが数秒間すべてのインタラクションからUIをブロックするにはどうすればよいですか?
知りたいのですが、次のような遅延タイミングでこれを行う方法wait(5000);
Androidでユーザーが数秒間すべてのインタラクションからUIをブロックするにはどうすればよいですか?
知りたいのですが、次のような遅延タイミングでこれを行う方法wait(5000);
任意のタッチイベントdispatchTouchEvent
への呼び出しをオーバーライドして停止することができます。このメソッドは、処理される前に実行する必要があります。super.dispatchTouchEvent(ev);
制御するブール値を設定し、それをメソッドで使用して、制御をブロックするかどうかを決定します。
private boolean stopUserInteractions = false;
public boolean dispatchTouchEvent(MotionEvent ev) {
if (stopUserInteractions) {
return true;
} else {
return super.dispatchTouchEvent(ev);
}
}
必要なときにコードで表示Non-cancelable progress dialog
して閉じます......。
例を参照してください
http://www.helloandroid.com/tutorials/using-threads-and-progressdialog
ユーザーが何もできないようにする、モーダルでキャンセルできない進行状況ダイアログをポップアップ表示できます。ただし、UIスレッド自体をブロックしないでください。
UIブロック時間でProgressDialogを使用します。ProgressDialogのキャンセル可能falseを設定します。そのため、ユーザーはUIにアクセスできません。
ありがとう。