1

DialogFragment レイアウトをプログラムで作成する必要がありますが、その方法がわかりません。DialogFragment はクローズドソースの JAR ファイルの一部になるため、xml レイアウトを使用できません。

通常のダイアログはコンストラクターでアクティビティを受け入れるため、次のように新しいレイアウトをインスタンス化できますlayout = new LinearLayout(this);。一方、DialogFragments は通常、Activity をパラメーターとして使用しないため、この最初のステップを実行する方法がわかりません。

  1. レイアウトはどのように作成すればよいですか?
  2. コンストラクターでアクティビティを要求しても問題ありませんか?
  3. DialogFragment のレイアウトを作成することは、通常のダイアログのレイアウトを作成することと何か違いがありますか? DialogFragment の手動設計に関するその他のアドバイスをいただければ幸いです。
4

1 に答える 1

2

レイアウトはどのように作成すればよいですか?

どのようにそれを見せたいか。膨らませてメソッドから返すレイアウトファイルを使用できない/使用したくない場合onCreateViewは、新しいダイアログのビュー階層全体をコードで構築する必要があります。

コンストラクターでアクティビティを要求しても大丈夫ですか?

これは必要ありません。Fragmentはへの参照を取得しActivityます。を使用すると、そのコンテキストへの参照が得られますgetActivity()

DialogFragmentのレイアウトを作成することは、通常のDialogのレイアウトを作成することと何か違いがありますか?DialogFragmentの手動設計に関するその他のアドバイスに感謝します。

いいえ、違いはありません。のドキュメントにはDialogFragment、カスタムの作成方法に関する優れた例がありDialogFragmentます。チェックしてください。

于 2012-10-03T08:48:45.080 に答える