Caused by: java.lang.IllegalStateException: Activities can't be added until the containing group has been created.
解决办法:
LocalActivityManager mLocalActivityManager;oncreate()方法实例化mLocalActivityManager = new LocalActivityManager((Activity) context, true);
2、在oncreate,onresume,onpause方法中分别加入如下代码:
oncreate()--------------mLocalActivityManager.dispatchCreate(arg0);参数arg0为oncreate方法的形参
onpause()--------------mLocalActivityManager.dispatchPause(isFinishing());传入true
onresume()--------------mLocalActivityManager.dispatchResume();
LocalActivityManager的使用方法
我是自己封装了一个方法LocalActivityManager的使用方法我是自己封装了一个方法
<pre name="code" class="java"><span style="font-size:18px;">localActivityManager在oncreate中创建
localActivityManager = new LocalActivityManager(MainActivity.this, true);
</span>
private void setActivity(Class<?> activity){Intent intent = new Intent(MainActivity.this,
activity);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
@SuppressWarnings("deprecation")
View v = localActivityManager.startActivity("one",
intent).getDecorView();
layout_fram.removeAllViews();
layout_fram.addView(v);
}
在需要的位置调用此方法 其中参数 是activity.class
layout_fram是xml文件中的布局见下文
<FrameLayout
android:id="@+id/group_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1" >
</FrameLayout>