あなたはどちらを使う?「Android.app.Fragments」と「android.support.v4.app.Fragments」

  • このエントリーをはてなブックマークに追加
  • Pocket

AndroidでFragmentsを使用するとき、APIが2種類あり、どちらを使用すべきか迷います。どちらを使用するべきか調べてみましたので、紹介します。

Q.

Fragments を使おうとしたとき、次のどちらの実装を使うべきでしょうか。

  • Android.app.Fragments (Native Fragments)
  • android.support.v4.app.Fragments

A.

次の理由で、android.support.v4.app.Fragments を使うほうがよいとのこと。

  • Native Fragmentsよりも、バグが少ない。
  • Native Fragmentsだと、ChildFragmentManager (Nested Fragments)が v17 以降しか使えない。
  • Native Fragmentsだと、onAttach(Context context) は API Level 23以降でしか使えない。それ以前で使える onAttach(Activity activity) は deprecated となった。

Support Library は、効率の悪い実装をしていそうなイメージがあり使いたくないですが、後方互換性を無視する場合でも、安定性や実装の容易性の面でこちらを使うほうがよいとのことです。(少なくとも、新しい Library が十分安定するまでは。)

参考

  • このエントリーをはてなブックマークに追加
  • Pocket

コメントを残す