2

以下の図を参照してください。

http://developer.android.com/guide/components/fragments.html

電話で 2 つの別々のアクティビティを使用し、タブレットで 1 つのアクティビティを使用することを Google が提案する理由を誰か説明してください。アクティビティ A にフラグメント B (タブレット用) を管理するコードがある場合、電話用のアクティビティ B で同じコードを繰り返さなければならないのはなぜですか?

電話の場合でも、1 つのアクティビティ (アクティビティ A のみ) を使用してフラグメントを置き換えることができるようです。これにより、冗長なコードを減らすことができますか?

ありがとう。

4

3 に答える 3

3

その理由は、本質的に、電話が小さいからです。本当に小さい。実際、小さい。

メール アプリケーションの古典的なシナリオを考えてみましょう。そのシナリオの 2 つのフラグメントは、メッセージ リスト (フラグメント A) とメッセージ コンテンツ (フラグメント B) です。スペースがあるタブレットでは、それらを 1 つのアクティビティに、画面上で同時に快適に組み合わせることができます。ただし、電話では画面の領域を慎重に管理する必要があるため、メッセージを選択するフェーズ (フラグメント A を示すアクティビティ A) とメッセージを読むフェーズ (フラグメント B を示すアクティビティ B) に分割する必要があります。 )。

それらをフラグメントとして開発することにより、他のプラットフォームのユーザー コントロールと同様に、既存のフラグメントからアクティビティを構成して、タブレットと電話の同じコードベースで同じフラグメントを使用できます。

于 2012-11-08T15:33:10.933 に答える
1

私はあなたが意味するものを理解します..

フラグメント コンテナを使用してフラグメントを置き換え、選択コールバックのインターフェイスを定義できます。Googleはこのようにしているだけで、活動の世界から来た人にとってはより明確かもしれません.

于 2012-11-08T15:35:08.790 に答える