按下回车键隐藏 android 键盘

Posted

技术标签:

【中文标题】按下回车键隐藏 android 键盘【英文标题】:hiding the android keypad on pressing enter 【发布时间】:2011-09-05 07:30:25 【问题描述】:

我有一个编辑文本和一个保存按钮,我想在单击保存按钮而不是按返回键时关闭小键盘,在我输入保存按钮后必须关闭小键盘。如何实现这一点,请帮助我并提前感谢

【问题讨论】:

【参考方案1】:

您可以在编辑文本上覆盖 onkeypress 并检查是否按下了输入,如果为真则隐藏

myEditText.setOnKeyListener(new OnKeyListener() 
    @Override
    public boolean onKey(View v, int keyCode, KeyEvent event) 
        if (keyCode == KeyEvent.KEYCODE_ENTER)  
                InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
    imm.hideSoftInputFromWindow(myEditText.getWindowToken(), 0);
        
     return false;
    
);

【讨论】:

【参考方案2】:

以下解决方案适用于 Xamarin 朋友...

注意:这是至少输入一个字符然后按下“Enter”键的情况。

private SearchView _searchView;
public override bool OnCreateOptionsMenu(IMenu menu)

     //Do things here... Call MenuInflater......
     _searchView.QueryTextSubmit += _searchView_QueryTextSubmit;


void _searchView_QueryTextSubmit(object sender, SearchView.QueryTextSubmitEventArgs e)

    InputMethodManager imm =  (InputMethodManager)GetSystemService(InputMethodService);
    imm.HideSoftInputFromWindow(_searchView.WindowToken, HideSoftInputFlags.None);
    e.Handled = true;

【讨论】:

以上是关于按下回车键隐藏 android 键盘的主要内容,如果未能解决你的问题,请参考以下文章

安卓如何用键盘开启浏览器

Android:从软键盘中删除 Enter 键

按下返回键时隐藏软键盘

在IOS5中按回车键时隐藏键盘

在 Appium 测试中输入“回车键”

java--键盘事件类,按下回车则模拟鼠标