2016年10月15日土曜日

FragmentのonClickイベント

Activityのようにlayoutのxml内でButtonなどから
android:onClick="onClickEvent"
と記述した場合、外側のActivityにメッセージが投げられるだけで肝心の自分のFragmentには届かない。

結果としてどちらかを選ぶ必要がある。
  • xml記述を優先しActivityに処理を記述する。
  • onCreateViewなどでinflateした後にコードでリスナーを登録する。
普通に考えるとコードでリスナー登録を行う方がスマートなのですが、なんでxmlでFragment内のメソッドに飛ばさないのかが納得いきませんが。

何とかできないかといろいろ手は尽くしてみたものの、なんともならないので検索してみると同様の方はやはりいらっしゃったようです(笑)

Fragment上のonClickとかをFragment内で受け取る - Qiita: