0

質問がすべてを表していると思います。コードで新しい FragmentActivit を作成して開始したいのです。私は次のようなことを考えています:

FragmentActivity fa = new FragmentActivity();              
fa.getSupportFragmentManager().beginTransaction().replace(R.id.item_detail_container, myFragment).commit();

// start fa

しかし、どうすれば新しい動的 (Fragment)Activity を前面に出すことができますか?

4

1 に答える 1

1

Android は、ライフサイクル メソッドを介してアクティビティのオブジェクトを作成します。このようなオブジェクトを作成すると

FragmentActivity fa = new FragmentActivity(); 

ライフサイクルメソッドは実行されず、アクティビティは役に立たない通常のクラスと同じです。

インテントを使用して次のアクティビティに移動します。

Intent i=new Intent(context, FragmentActivity.class);
startActivity(i);

単にフラグメントを置き換えたい場合は、メソッドを使用してフラグメントのアクティビティを取得しますgetActivity()

getActivity().getSupportFragmentManager().beginTransaction().replace(R.id.item_detail_container, myFragment).commit();

これを試して

于 2013-05-23T16:18:51.027 に答える