【问题标题】:Starting Activity with back button使用后退按钮启动 Activity
【发布时间】:2012-02-13 06:34:30
【问题描述】:

我正在 android 中开发一个应用程序,我正在寻找解决方案。

有一个 Activity(比如 A1),通过点击一个按钮,用户可以转到另一个 Activity(比如 A2)。现在,一旦用户完成了 A2 活动,他点击后退按钮,返回到之前的活动 A1。 嗯,这是一个众所周知的事实,A1 将在此时自动恢复。

但我想要它以不同的方式(因为我的应用程序需要)。

一旦我从 A1 转到活动 A2,A1 就会被销毁;如果单击后退按钮,则在 A2 中时,将再次创建 A1。

谁能告诉我如何进行这项工作?

【问题讨论】:

  • A1 必须销毁并重新创建的特殊点是什么?如果您在 onCreate() 期间完成了一些流程,我认为您可能会将 onCreate() 中的大部分代码移至 onResume()。
  • 请查看stackoverflow.com/questions/4778754/…,这可能会有所帮助。谢谢,Developerjigar
  • @VictorWong~~ 已经试过了,没用。但似乎我需要重新创建它。

标签: android android-activity


【解决方案1】:

你可以使用:

public void onBackPressed()  
{  
    //do whatever you want the 'Back' button to do  
    //as an example the 'Back' button is set to start a new Activity named 'NewActivity'  
    this.startActivity(new Intent(YourActivity.this,NewActivity.class));  

    return;  
}  

看这里:http://www.41post.com/1685/programming/android-changing-the-back-button-behaviour

【讨论】:

  • 我不确定这是否满足他的需求,因为他想让A1被销毁。
【解决方案2】:

您可以像这样覆盖后退按钮按键:

@Override
public boolean onKeyUp(int keyCode, KeyEvent msg) {

     switch(keyCode) {
     case(KeyEvent.KEYCODE_BACK):
          Intent a1_intent = new Intent(this, A1Activity.class);
          startActivity(a1_intent);
          finish();
          return true;



     }
     return false;
}

Take a look at this

【讨论】:

    【解决方案3】:

    试试这个:

    public void onBackPressed() {  
        finish();
        return;  
    }
    

    【讨论】:

      猜你喜欢
      • 2014-03-05
      • 2013-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多