カスタムXMLを使用してダイアログを表示する場合は、DialogFragmentを使用できます。DialogFragmentと対話をテーマにした対話?
しかし、アクティビティを代わりに使用してダイアログテーマを付けることもできます。これは、アクティビティが互いに話すことができ、フラグメントは通信できないため、通信が簡単になります。
私はこのようにしてはならない理由がありますか?長所と短所は何ですか?
カスタムXMLを使用してダイアログを表示する場合は、DialogFragmentを使用できます。DialogFragmentと対話をテーマにした対話?
しかし、アクティビティを代わりに使用してダイアログテーマを付けることもできます。これは、アクティビティが互いに話すことができ、フラグメントは通信できないため、通信が簡単になります。
私はこのようにしてはならない理由がありますか?長所と短所は何ですか?
DialogFragmentは、複雑なダイアログを表示するAndroidの方法と考えられています。あなたが持っている唯一の問題がアクティビティやダイアログからの断片化と通信している場合、いくつかの簡単な解決策があります。それらの1つ - あなたがインターフェイスを使用することができますフラグメントからのアクティビティへの応答を送信する。また、DialogFragmentの表示は、新しいアクティビティを起動するよりも高速です。 DialogFragmentのもう1つの利点は、フラグメントからアクティビティーへのデータの受け渡しがアクティビティーからアクティビティーへの操作より簡単であることです(これは、オブジェクトをインテント・エクストラとして配置する必要があります)。
カスタムXMLを使用してダイアログを表示する場合は、 DialogFragmentを使用できます。
はい、私たちは、カスタムレイアウトを定義するためのonCreateView DialogFragment.onCreateViewの()テンプレートメソッドのコールバック()でレイアウトを定義することができます。
しかし、私はまた、代わりに活動を使用し、それに通信を少し簡単になり活動が フラグメントができないのに対し、お互いに話すことができるので便利ですダイアログテーマ、 を与えることができます。
startActivityForResult(Intent intent, int reqCode)
メソッド start Activity B from Activity A
を使用する必要があります。 Activity B
が完了したら Activity A
にsetResult(int reqCode, Intent intent)
の方法で結果を渡す必要があります。Interface
を実装する必要があり、通信との比較では非常に簡単です。 とActivites
の間です。詳細はlinkに従ってください。Fragment
の2つは、Interface
を経由して、それぞれ 以外と容易に通信できます。詳細は上記リンクをご確認ください。 Tablet UI
については、実装を実現するためにフラグメントを使用する必要があります。 を管理し、モジュール化してください。私はこのようにしてはならない理由はありますか?長所と短所は何ですか?
Activity A
にその結果を通過するActivity B
通信Activity A
からActivity B
について"Fragment & Activity"
間と
"Fragment & Fragment via Activity"
が可能です。
Activity.startActivityForResult()
には独自の利点があります。カメラで画像をキャプチャする場合は、Implicit Intent
を使用してカメラActivity
を起動し、画像をキャプチャしたら画像のURIをsetResult(int reqCode, Intent intent)
に戻して、onActivityResult()
という呼び出しアクティビティが呼び出され、画像のURIの詳細を確認できるようになります。
「同じアクティビティの2つのフラグメントは、インターフェイス経由で簡単に通信できます」アクティビティ - >フラグメント - >フラグメントの場合は、なぜなら、フラグメントからインプリメンテーションの詳細を抜き出してアクティビティに入れなければならないからです。 – KaliMa
@Kalima:ケースアクティビティ - >フラグメント - >フラグメントについて話しています。この場合、2番目のフラグメントは必須ですネストされるFragment1のFragment mean child。アクティビティから2番目のフラグメントと直接通信する必要はありません。フラグメント1にイベントを渡してから、フラグメント1は、イベントをフラグメント2に渡します。詳細は以下のリンクをご確認ください。 http://stackoverflow.com/questions/14831690/inter-fragment-communication-applied-to-nested-fragments –