###getSurpportFlagmentManager()をリスナクラスで使うには?
getSurpportFlagmentManager()
をリスナクラスの中で使おうとしたら赤くなりました。
なぜだろうと思い、いろいろいじっていくうち、実験的に、リスナクラスにgetSupportFragmentManager()
を記述するのではなく、クラスのonCreate
に記述したらそちらは上手く認識してくれました。
参考としていた本では普通にリスナクラスのほうにgetSurpportFlagmentManager()
を書いていたので、なにが違うのだろうと首をかしげるばかりです。
ですが、私は「ボタンを押したらダイアログを表示する」という流れが必要なので、どうにかリスナクラスのほうでもgetSurpportFlagmentManager()
を有効にしたいです。
これを解決する術はあるでしょうか?
どうかアドバイスお願いします。
kotlin
1 2import android.support.v4.app.FragmentActivity 3import android.support.v4.app.FragmentManager 4/*省略*/ 5 6class SelectActivity : FragmentActivity() { 7 /*リスナクラスListStoryClickListenerをプライベートなメンバー変数として記述 8 StoryConfirmDialogという確認ダイアログを表示したい。*/ 9 private class ListStoryClickListener: AdapterView.OnItemClickListener { 10 override fun onItemClick(parent: AdapterView<*>?, view: View?, position: Int, id: Long) { 11 val storyConf = StoryConfirmDialog() 12 storyConf.show(getSupportFragmentManager(),"Confirm Story") 13 //赤くなる。ここで使いたいのに・・・ 14 } 15 } 16 17 override fun onCreate(savedInstanceState: Bundle?) { 18 super.onCreate(savedInstanceState) 19 //ここでならgetSupportFragmentManager()がつかえるのに・・・ 20 .... 21 } 22 /*省略*/ 23}
回答1件
あなたの回答
tips
プレビュー