Androidサポートライブラリ、フラグメント、および特定の例としてViewPager
クラスに関して質問があります。私の意図は、Android Developer Webサイトで提供されているサンプルと同様の機能を持つアプリを作成することです( http://developer.Android.com/training/animation/screen-slide.html または http://developer.Android.com/training/implementing-navigation/lateral.html )。彼らのコードを見ると、彼らはAndroid.support.v4.app
ライブラリを利用していることに気づきました。これは私の研究からViewPager
クラスにアクセスする唯一の方法です。
私の状況では、後方互換性には興味がありません。最小APIレベルは14(アイスクリームサンドイッチ)で、ビルドターゲットは4.2 Jelly Beanです。最も単純な形式では、アプリはAndroid devウェブサイトでリンクした2番目のデモとまったく同じように動作します-それぞれにコンテンツがある3つのタブ間をスワイプするだけです。
私が読んだすべての記事/投稿/回答は、v4サポートライブラリを非常に好んでいるようです。さて、私の長い質問ですが、次の質問について:
Android.support.v4.app
を使用してSupportFragmentsを使用する、またはAndroid.app
で提供されるフラグメントを使用する-アプリケーションを構築する最良の方法は何ですか?
Android.app
のフラグメントが進むべき方法である場合、ViewPagers
にアプローチする最適な方法は何ですか?
SupportFragmentsがタスクに最も適している場合、それらは他と同じ機能を持っていると推定します。したがって、Android.app
内にそれらを配置する目的は何ですか?
うまく理解できていれば、私は困惑しているので、少し説明してくれるといいのですが...
Android.support.v13.app パッケージのアダプターを使用して、Android.app
パッケージのネイティブフラグメントでViewPager
を使用できます。そのためには、v13サポートjarを使用する必要があります。
ViewPager
で動作するアダプターには2つのバージョンがあります。v4
パッケージ内のものはサポートフラグメントで使用するためのもので、v13
内のものはネイティブフラグメントで使用するためのものです。
現在2つのフラグメント実装がある理由は歴史的です:Android.app
パッケージのフラグメントは、タブレット専用のAndroid 3で導入され、古いバージョンを実行している電話機にフラグメントをもたらすためにサポートライブラリが作成されました。 Android 4には両方があります。
私自身の経験から、Android 4用に開発する場合でも、サポートフラグメントを使用することをお勧めします。いくつかの理由は次のとおりです。 フラグメントまたはサポートフラグメント?
Android.app.Fragment
クラスはAndroid P( link )であるため非推奨です。したがって、Android.support.v4.app.Fragment
のみをすべての場所で使用する必要があります。
API 11+をターゲットとする場合、サポートライブラリは必要ありません(少なくとも実際のapkは小さくなります)。
Android 3.xより前のバージョンをサポートする場合は、サポートライブラリが必要です。
これはあなたが求めていることですか?