继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

界面有多个EditText,手动隐藏输入法失效。

弑天下
关注TA
已关注
手记 141
粉丝 12
获赞 51

界面需求,在输入用户名或者密码时候,需要隐藏输入法,再进行其他操作。

下面为隐藏输入法的代码,网上还有其他的方法,各位请自行百度:

InputMethodManager manager=(InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);

manager.hideSoftInputFromInputMethod(LoginActivity.this.getCurrentFocus().getWindowToken(), 

InputMethodManager.HIDE_NOT_ALWAYS);

但是当我调用这个方法后,发现软键盘并没有消失,焦点却跑到了第一个EditText上面。

想了一阵才明白,并不是方法没有起作用,而是在隐藏了输入法后,第一个EditText又自动获取了焦点。

到了这里,就好解决了,不让EditText自动获取焦点即可:

在父控件中设置:

parent.setFocusable(true);

parent.setFocusableInTouchMode(true);

原文链接:http://www.apkbus.com/blog-666480-59242.html

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP