Android如何将活动放在后台而不是堆栈中
我有活动A和活动B。当应用程序打开时,活动A打开 我去A到B。那么你如何“从B回到A”,而不破坏B,这样当你从A到B的过程是超快速的?(您如何打开旧B而不创建新B?)Android如何将活动放在后台而不是堆栈中,android,android-activity,Android,Android Activity,我有活动A和活动B。当应用程序打开时,活动A打开 我去A到B。那么你如何“从B回到A”,而不破坏B,这样当你从A到B的过程是超快速的?(您如何打开旧B而不创建新B?) 还有一个问题,当你“从B返回A”时,当你返回A后按“返回”按钮时,有没有办法阻止B出现?你认为需要阅读以下内容: 如果您想在按A键时始终退出应用程序,则可以覆盖“onBackPressed” 可以说,关于如何保持“活动”状态,可以在清单中将A设置为“singleInstance”或“singleTask” 创建B时,请在onCre
还有一个问题,当你“从B返回A”时,当你返回A后按“返回”按钮时,有没有办法阻止B出现?你认为需要阅读以下内容: 如果您想在按A键时始终退出应用程序,则可以覆盖“onBackPressed” 可以说,关于如何保持“活动”状态,可以在清单中将A设置为“singleInstance”或“singleTask”
onCreate
中完成所有的艰苦工作,以便稍后恢复B时,它启动得更快。B只有在不使用时才会被销毁,android需要释放一些内存。因为它在后台,切换到它会非常快。要加快切换速度,可以在不使用动画的情况下切换:
Intent intent = new Intent(this, B.class);
startActivity(intent);
overridePendingTransition(0, 0);
android:launchMode="singleTask"
onBackPressed()
,该活动总是退出应用程序,而不是返回到B1) 似乎每次都在创建活动B,而不是继续。我将从A到B和B到A显式使用意图-意图-新意图。。。startActivity,因为我有额外的数据需要用putExtra发送两次。您知道如何在每次打开活动B时恢复活动B而不创建它吗?B是单任务。3) 如何完全以编程方式退出应用程序?finish()只需退出该活动。当我从B转到A时,我的应用程序中就有这个东西,按“上一步”按钮只需退出该应用程序。我不知道为什么,但它应该转到B。。我认为B每次都会被销毁,但我没有在B中调用finish(),而是启动了活动A的活动。我想你可以通过moveTaskToBack退出应用程序(true);