【问题标题】:Help prevent Back button from closing sub-activity帮助防止后退按钮关闭子活动
【发布时间】:2010-11-20 09:35:47
【问题描述】:

我有一个主要活动。它的主要目的是处理 Tab 菜单。如果用户单击一个选项卡,它将加载另一个活动作为子活动,仍然显示选项卡菜单。我正在使用 Intent 来执行此操作:

setContent(new Intent(this,B.class))

这个子活动也有一个 onclick 功能。如果用户单击其中一个链接,它将使用 setContentView 命令加载 xml 布局文件:

setContentView(R.layout.B1);

现在,当加载 xml 文件时按下后退按钮时,它将关闭整个应用程序。有没有办法防止这种情况,比如返回子活动或主要活动?

感谢您的帮助。

【问题讨论】:

    标签: android back-button


    【解决方案1】:

    您应该在您的活动或子活动中覆盖 onBackPressed 方法:

    @Override
    public void onBackPressed() {       
        //TODO Do your task here
    }
    

    【讨论】:

    • 实际上,为了防止活动关闭,您不应致电super.onBackPressed()
    • @igagis 感谢您指出错误。 8 年没见过了 :)
    【解决方案2】:

    在您的子活动中,您应该覆盖休闲:

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event)  {
    
           if (keyCode == KeyEvent.KEYCODE_BACK)  //Override Keyback to do nothing in this case.
           {
               return true;
           }
           return super.onKeyDown(keyCode, event);  //-->All others key will work as usual
       }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-27
      相关资源
      最近更新 更多