java - 按后退按钮到另一个 Activity

标签 java android

我尝试使用下面的代码在按下后退按钮的同时调用另一个 Activity :

@Override
public boolean onKeyUp(int keyCode, KeyEvent msg) {
   switch(keyCode) {
       case(KeyEvent.KEYCODE_BACK):
       Intent intent = new Intent(AActivity.this, BActivity.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);  
       Window w = NASGroup.group.getLocalActivityManager().startActivity("BActivity", intent);  
       View view = w.getDecorView();  
       MyGroup.group.setContentView(view);  
       return true; 
   }
   return false;
}

但是当我按下后退按钮时,它会退出应用程序。 我看到了 logcat,它不运行函数 onKeyUp 并且不输出任何消息。 onKeyUp 中的相同代码,我尝试将代码置于布局中的按钮下方,它起作用了。

cancel.setOnClickListener(new OnClickListener() {
   @Override
   public void onClick(View v) {
      Intent intent = new Intent(AActivity.this, BActivity.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);  
      Window w = NASGroup.group.getLocalActivityManager().startActivity("BActivity", intent);  
      View view = w.getDecorView();  
      MyGroup.group.setContentView(view);  
   }
});

如何修改?

最佳答案

要处理后退,您必须重写 Onbackpress 方法。

@Override
public void onBackPressed() {

    finish();
    Intent intent = new Intent(Myactivity.this, other.class);
    startActivity(intent);
}

关于java - 按后退按钮到另一个 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9510483/

相关文章:

android - 在 View 中将 Context 转换为 Activity 总是安全的吗

java - 通过 Ant 任务运行 javac 时如何查看编译器输出?

macos - Java Web Start in 10.8.2 with native (Apple) Java 1.6 找不到 JRE

java - 用Java打印不同字体大小的发票

java - Windows 和 OS X 桌面应用程序的首选开发平台

java - 在 Android 应用程序的 Eclipse 中构建工作区遇到问题

java - 为什么有些 java eclipse 错误没有特定的代码行?

android - 自定义 AlertDialog 未显示

android - 从后台删除 fragment 并显示 Activity

java - 我如何一次只允许一个 session 到 Spring REST Web 服务?