16

基本的に、Dialogs はバックグラウンドでアクティビティを非アクティブ化します。したがって、DialogFragment複雑さが増しても同じことが起こります。DialogFragmentでは、さまざまなサブクラスが利用可能であるにもかかわらず、なぜ選択する必要があるのでしょうかDialog

4

4 に答える 4

7

Fragmentsはアクティビティで使用されますが、フラグメントをダイアログ (ウィンドウ) として表示FragmentTransactionし、フラグメントのライフサイクルをフォローアップするには、 を使用する必要がありますDialogFragment。ただし、simpleDialogも使用できますが、フラグメントのライフサイクルとは関係ありません。

Googleドキュメントによると:

必要に応じて、DialogFragment を通常のフラグメントとして使用することもできます。これは、場合によってはダイアログとして表示し、他のフラグメントをより大きな UI に埋め込む必要がある場合に便利です。

于 2012-08-28T09:36:48.183 に答える
4

FragmentDialog は、次のようなフラグメントです。

  1. フラグメントとして使用されます。例:

    FragmentTransaction trans = getSupportFragmentManager().beginTransaction();
    trans.add(R.id.navigation_fragment, mFriendFragment);
    trans.commit();
    
  2. ダイアログとして使用されます。例:

    FragmentManager fm = getFragmentManager();
    UnsubscribeTabletFragment fragment = new UnsubscribeTabletFragment();
    fragment.show(fm, "dialog");
    

したがって、フラグメントがあり、フラグメントがフラグメントとして機能する場合や、ダイアログとして機能する場合は、これを使用する必要があります。

于 2016-08-08T16:21:34.190 に答える
3

DialogFragmentは、アプリのダイアログの一部を再利用することを許可します。フラグメントがレイアウトに対してそれを行うのと同じように。

ここにDialogFragmentに関する優れた記事があります:http: //android-developers.blogspot.fr/2012/05/using-dialogfragments.html

于 2012-08-28T09:32:11.403 に答える
1

すでにフラグメントを使用してAndroidアプリに動的レイアウトがある場合、アクションボタンのクリックまたは他のクリックからダイアログで/で使用する必要があるため、今回はdialogFragmentが通常のダイアログよりも便利です。

于 2012-10-08T09:54:11.530 に答える