Android - 活动和导航?

时间:2011-06-08 17:12:59

标签: android android-activity navigation

  • 我从Activity1导航到Activity2 在活动2上,我有一个键盘,选择后退按钮并转到活动1后,此键盘会保留在屏幕上。

这就是我解决这个问题的方法

    // This code is in Activity 2
@Override
public void onBackPressed() {
    startActivity(intentForActivity1);
    finish();
}

这是我的问题的错误解决方案吗? 手动处理后退按钮是个坏主意吗?

2 个答案:

答案 0 :(得分:1)

覆盖后退按钮没有任何内在错误。只需确保行为不会让用户感到困惑。

此外,如果您只是想隐藏软键盘(例如,您在标签之间切换或类似的东西),您可以使用InputMethodManager。这是一个thread,人们讨论了如何做到这一点。

答案 1 :(得分:1)

由于您正在按下后退按钮,很可能软键盘没有接收到按键,因此它不会隐藏。

尝试自己隐藏它:

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

有关隐藏键盘的此方法的详细信息,请参阅Reto Meier的答案:Close/hide the Android Soft Keyboard