Android 启动动态(片段)活动

Android 启动动态(片段)活动,android,android-fragments,android-activity,android-fragmentactivity,Android,Android Fragments,Android Activity,Android Fragmentactivity,我想这个问题说明了一切:我想在我的代码中创建一个新的FragmentActivit并启动它。我会这样想: FragmentActivity fa = new FragmentActivity(); fa.getSupportFragmentManager().beginTransaction().replace(R.id.item_detail_container, myFragment).commit(); // start fa 但是我如何才能将一个新的动态(

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

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

// start fa

但是我如何才能将一个新的动态(片段)活动带到前台呢?

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();

试试这个

Pragnani是正确的。我要补充的是FragmentActivity是一个支持类,它的设计目的是让您可以在本机不支持Fragment的旧版本Android中使用片段。它与活动的用法相同。它只是添加了与旧版本的Activity所缺少的片段进行对话的方法。因此,从FragmentActivity移动到FragmentActivity使用意图(就像activity一样)。您可以使用getSupportFramentManager()开始处理当前FragmentActivity中的片段。