问题描述
|
我对使用finish()进行活动和使用键盘的后退按钮感到非常困惑。我创建了许多活动,因此在从一个活动转到另一个活动后我完成了最后一个活动。而且我在活动中使用了“后退”按钮,因此我可以返回(来自我的所在地)
通过按后退按钮,但是当我使用键盘的后退按钮时出现问题,我转到任何其他活动。我希望它可以作为我活动的后退按钮使用。
而且我认为这可以通过使用onKeyListener和检查键盘的后退按钮来完成,在那里我开始与活动的后退按钮相同的活动。
我想知道这样做是对的还是比这更好的方法?
请帮忙
解决方法
有一个更好的方法:
从一种活动转到另一种活动时,请勿调用“ 0”。如果需要内存,则操作系统将为您清除内存,当您按回时,它将按需要工作。只要确保您的生命周期功能正确(当您松开焦点时清理大量占用内存的东西等),您就会变得更加快乐。
, 您可以覆盖活动的“ 1”方法来覆盖默认行为(即为活动调用“ 0”)。
但是,当您常规执行此操作时,应该对总体设计提出疑问。请查看“任务和后退堆栈”上的文档,以了解其他控制用户体验的方法,这些方法可以更好地与Android活动生命周期配合使用。
, 尽量不要使用finish(),如果您要释放内存,则不必担心需要内存的情况,并且可以使用返回的按钮。
希望您知道活动的生命周期。每当您按下“后退”按钮时,其他活动就会停止
, 如果要调用
finish()
,并且还希望将设备后退按钮用作活动后退按钮,请覆盖onBackPressed()
方法。
假设您处于活动2中,并且想要返回活动1,这是您的第一个活动,然后在Activity2.java中编写以下代码...。
public void onBackPressed()
{
Intent setIntent = new Intent(this,Activity1.class);
startActivity(setIntent);
return;
}