0

我认为这个问题说明了一切:我想在我的代码中创建一个新的 FragmentActivit 并启动它。我想这样的事情:

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

// start fa

但是我怎样才能把一个新的动态(片段)活动带到前面呢?

4

1 回答 1

1

Android 通过生命周期方法为您的 Activity 创建对象。如果你像这样创建对象

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 回答