DialogFragmentの外部タッチについて(Kotlin)

DialogFragmentの外部タッチについて(Kotlin)

API13以降、Activity.showDialogが非推奨となっているため(簡単で便利だけど)代わりにDialogFragmentを利用しています。
このクラス、Honeycomb以降だとデフォルトだと外部タッチでダイアログが閉じてしまいます。
AlertDialog.Builder.setCancelable(false)を使っても効果なしでつまずきましたが試行錯誤の
上解決できたためその方法を紹介します。

 

ダイアログ表示サンプル

以下のようにDialogFragmentを継承した汎用クラスを作成しました。
結論から書くとDialogFragment自身(this)に設定してあげれば良いわけです。
Fragment内にDIalogを生成しているようなものなので内部で外部の設定をしても意味はない
って考えると当たり前にも感じますね…

以上です。