Android 安卓-活动和导航? 我从Activity1导航到Activity2 在活动2中,我有一个键盘,在选择后退按钮并转到活动1后,该键盘保持在屏幕上

Android 安卓-活动和导航? 我从Activity1导航到Activity2 在活动2中,我有一个键盘,在选择后退按钮并转到活动1后,该键盘保持在屏幕上,android,android-activity,navigation,Android,Android Activity,Navigation,我就是这样解决这个问题的 // This code is in Activity 2 @Override public void onBackPressed() { startActivity(intentForActivity1); finish(); } 这是解决我问题的错误方法吗? 手动操作“后退”按钮是个坏主意吗?覆盖“后退”按钮本身并没有什么问题。只需确保该行为不会让用户感到困惑 此外,如果您只想隐藏软键盘(例如,在选项卡之间切换或类似操作),您可以使用。这是

我就是这样解决这个问题的

    // This code is in Activity 2
@Override
public void onBackPressed() {
    startActivity(intentForActivity1);
    finish();
}
这是解决我问题的错误方法吗?
手动操作“后退”按钮是个坏主意吗?

覆盖“后退”按钮本身并没有什么问题。只需确保该行为不会让用户感到困惑


此外,如果您只想隐藏软键盘(例如,在选项卡之间切换或类似操作),您可以使用。这是一个大家讨论的方法

由于您捕获的是后退按钮按下,很可能软键盘没有接收到按下,因此它不会隐藏

试着自己藏起来:

@Override
public void onBackPressed() {
    InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
    imm.hideSoftInputFromWindow(myEditText.getWindowToken(), 0);
    startActivity(intentForActivity1);
    finish();
}

有关隐藏键盘方法的更多详细信息,请参见Reto Meier的回答:

当键盘打开时,第一个后退按钮应关闭键盘。这不是真的吗?