2011-06-08 68 views
0
  • 我从活动1导航到活性2 练习2我有一个键盘和这款键盘选择后退按钮和去到活动后在屏幕上显示1

这是我如何修复了这个问题Android - 活动和导航?

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

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

+0

当键盘了,先回按钮应关闭键盘。这没有发生? – 2011-06-08 17:17:38

回答

1

由于您正在捕获后退按钮,所以最有可能的是软键盘没有收到新闻,因此它不会隐藏。

尝试自己隐藏得:

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

见雷托·梅尔的答案,详细了解此方法来隐藏键盘:Close/hide the Android Soft Keyboard

1

重写后退按钮本身并没有什么错误。只要确保行为不会让用户感到困惑。另外,如果您只想隐藏软键盘(例如,您在标签之间切换等),则可以使用InputMethodManager。这里有一个thread,人们讨论如何做到这一点。