2011-12-08 12 views
14

android pageadapterとfragmentpageadapterのドキュメントを読みましたが、違いはありませんでした。私は1つが断片であり、1つはそうではないことを意味する。私は本当に多くの断片を経験していないので、違いが気付かれないのかもしれません。 FragmentPagerAdapterまたはPagerAdapterを使用した場合の違いは何ですか?Difference FragmentPagerAdapterとPagerAdapter

答えて

16

違いは、FragmentPageAdapterの中にフラグメントを使用できることです。コードの他の部分で使用される断片がある場合は、これがアダプタです。 再利用されないコードのみを使用する場合は、PagerAdapterを使用できます。

+0

あります?またはビューを再利用しますか?他のクラスで再利用されないコードを意味しますか?事前に感謝します – Raykud

+0

いいえ、私はあなたがフラグメントを使用するとき、通常は複数の単一のアクティビティでこのフラグメントを使用するつもりであることを意味する必要がありました。フラグメントはそれらを含むアクティビティにリンクされているため、この場合のビューの再利用性はviewPagerと同じです。この記事では、機能性に関する再利用性について言及していました。申し訳ありませんが正しく説明できません – jegumi

+0

素敵な説明 – Steve

5

フラグメントを使用して各ページを管理するPagerAdapterの実装。しかし、私は強くFragmentStatePagerAdapterクラスを使用することをお勧めします保存し、フラグメントの状態の復元を処理します。

FragmentStatePagerAdapterバージョンのページャは、リストビューのように多くのページがある場合に便利です。ページがユーザーに見えない場合、そのフラグメント全体が破棄され、そのフラグメントの保存された状態だけが保持されます。これにより、ページ間の切り替え時にオーバーヘッドが増える可能性があるため、ページャは、FragmentPagerAdapterと比較して、訪問した各ページに関連付けられたメモリをはるかに少なく保持できます。

FragmentPagerAdapterを使用する場合、ホストViewPagerには有効なIDが設定されている必要があります。

サブクラスでは、getItem(int)およびgetCount()を実装するだけで、動作するアダプタが必要です。ここで

は、たとえば、あなたの指をスワイプときに、通常のpageradapter内の各ページが何度も何度も作成されimplementation of a FragmentStatePagerAdapter pager containing fragments of lists

関連する問題