読者です 読者をやめる 読者になる 読者になる

<!--親の顔より見た光景-->

日々の発見を残していきます。

ProgressDialogでダイアログの外をタッチされる問題

android

ProgressDialogは「計算中・・・」などのメッセージを表示してユーザーに待機してもらう為のクラス。

f:id:akagi13213:20161104193559p:plain

この時にダイアログの外をタッチされるとデフォルトではダイアログが消えてしまう。

 →上の画像の場合、SurfaceViewが一番上になってSurfaceViewで用意されているタッチリスナーを呼び出されるケースがある。

StackOverFlowにて解決。

java - How to avoid dismissing my progress dialog when the user touches the screen? - Stack Overflow

ProgressDialogの継承元Dialogクラスで用意されている

public void setCanceledOnTouchOutside( boolean )

メソッドを使えば良い。

引数がtrue → ダイアログ外をタッチしたらダイアログが消える。

引数がfalse → ダイアログ外をタッチしても消えない。