1. ホーム

[解決済み】Androidのアクティビティダイアログが外部からのタッチで閉じないようにする。

2022-04-05 15:11:41

質問

私は、別のアクティビティの上にフローティングウィンドウであるような、Theme.Dialogスタイルを使用しているアクティビティを持っています。しかし、ダイアログウィンドウの外側(背景のアクティビティ上)をクリックすると、ダイアログが閉じてしまいます。どうしたらこの動作を止められるでしょうか?

解決方法を教えてください。

これは役に立つかもしれません。これは、タッチアウトサイドイベントを処理する方法です。

ダイアログをテーマにしたアクティビティを、ウィンドウの外からタッチされたときにキャンセルするには?

イベントをキャッチして何もしないことで、閉じるのを防ぐことができると思います。しかし、不思議なのは、アクティビティダイアログのデフォルトの動作は、次のようになっているはずです。 ではない のように、外部に触れると勝手に閉じてしまいます。

(追記: WindowManager.LayoutParams を使用したコードです)