Android:从OnBackPressed()调用意图时的最佳实践

Android:从OnBackPressed()调用意图时的最佳实践,android,button,android-intent,Android,Button,Android Intent,邦丘!下面的代码是Android应用程序中某个活动的返回按钮覆盖,该活动将用户返回到上一页 @Override public void onBackPressed() { // TODO Auto-generated method stub //building new intent to go back to the main menu Intent openMainMenu = new Intent ("com.developmentsfoo.foobarbab.

邦丘!下面的代码是Android应用程序中某个活动的返回按钮覆盖,该活动将用户返回到上一页

@Override
public void onBackPressed() {
    // TODO Auto-generated method stub

    //building new intent to go back to the main menu

    Intent openMainMenu = new Intent ("com.developmentsfoo.foobarbab.MAINMENU");
    startActivity(openMainMenu);

    super.onBackPressed();
}

我的问题是,这个意图已经在另一个.java中作为onClick的一部分在几乎相同的上下文中被调用了。有没有办法从其他页面上的其他方法调用意图,或者在要返回的页面上创建新意图是最佳做法?这会增加开销吗?简单的setContentView方法在某些情况下会起作用吗?

如果它来自主菜单。class并且您必须在从当前活动转到另一个活动时执行
finish()
,您不需要执行onBackPress,因为当您按下后退按钮时,它会自动返回到活动堆栈中。

onBackPress()基本上会从活动堆栈中终止您的活动,因此为此您需要调用finish()ans,您将自动处于此可终止活动后面的活动。

很好的调用。但是,当您谈到在哪里放置finish方法时,我有点困惑。是的,新的活动来自主菜单,所以第一部分是正确的,但是你把完成放在哪里?我现在把它嵌套在一个onBackPress方法中,因为ADT不喜欢它只是坐在外面。说它需要一个身体。我唯一的另一种方法是onCreate,但这不会在页面创建的那一刻就杀死它吗?