我正在编写一个应用程序并且有一个错误我真的不知道如何解决。我有两个活动A和B,从活动A我按一个按钮开始B活动,但是当我这样做时,布局活动A消失了。请注意,B具有透明背景,因此用户可以看到活动A元素。但是我在Android 5.0设备上遇到这个问题,在其他Api级别上该应用程序按预期工作。我希望有人遇到类似问题或者在我的逻辑中遇到问题。 附:我宣布活动的A启动模式为“singleTask”,B为“标准”。这就是我开始活动的方式:
Intent intent = new Intent(GameActivity.this, MenuActivity.class);
startActivity(intent);
请注意,我没有在启动活动后调用finnish(),我也尝试将各种标志设置为intent,但问题仍然存在,而且只是在android 5.0上。 这是两个活动的清单代码:
<activity
android:name=".activities.MenuActivity"> </activity>
<activity
android:name=".activities.GameActivity"
android:launchMode="singleTask">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
在GameActivity中的onCreate()中我启动了这样的MenuActivity:
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.game_layout);
initViews();
Intent intent = new Intent(GameActivity.this, MenuActivity.class);
startActivity(intent);
}
答案 0 :(得分:1)
Intent intent = new Intent(GameActivity.this, MenuActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
试试这会对你有帮助。
答案 1 :(得分:1)
试试这个
Intent intent = new Intent(GameActivity.this, MenuActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);