2016-09-23 9 views
-1

私は最近、Androidの開発と、一般的な断片のアイデアには新しくなっています。 iosでは、を使用してdrawer menuのエクスペリエンスを作成することができました。これは、各ページを自分のものとして残します。viewcontroller - activityとほぼ同じです。これらの個別のviewcontrollersは、データをロードする場所が非常に明確で、ライフサイクルでかなり自己管理していました。アンドロイドの引き出しアクティビティとデータの読み込み場所

今、アンドロイドの​​は、メニューの各ページがfragment - すべてが同じactivityに属しています。これにより、いくつかのオプションがあります。

  1. 可能なすべてのページのすべてのデータを読み込む方法を知っているメガアクティビティがあります。これは潜在的に最も簡単ですが、維持するのが最も難しいです。
  2. それぞれの断片に自分のデータをロード/表示する方法を知らせます。これは理想的ですが、onViewCreatedでデータを再ロード/複製すると問題があります。さらに、データロードが非同期で行われている場合でも、ドロワーの初期ロードは非常に遅くなります。
  3. それぞれ独自のAPIコールを作成する必要がある多くの引き出しビューで、維持しやすいアプローチは何でしょうか?

答えて

0

アンドロイドには、iOSと比較してライフサイクルの方法がたくさんあります。

ビューごとにアクティビティを作成し、ドロワーコントロールを持つBaseActivityを拡張することができます。このようにして、基本クラスの引き出しコントロールがあり、他のアクティビティで引き出しを取得します。

2つ目は、フラグメントの方法でsetUserVisibilityHint()またはonViewCreated()メソッドを呼び出しapiに使用するか、少しのチェックでonResume()メソッドを使用することもできます。詳細を確認するにはthis

+0

はい、これに加えて、デカップリングビューのMVPパターンとデータレイヤーを使用します。コードは明確で、テスト可能で、保守が容易です。 https://github.com/googlesamples/android-architecture – Michael

関連する問題