【发布时间】:2015-10-26 15:40:18
【问题描述】:
我正在开发一个屏幕锁定应用程序。当屏幕关闭时,它会启动全屏活动。还有一个问题:如果用户在屏幕关闭时使用软键盘,键盘不会离开屏幕。它看起来像全屏活动和上面的键盘。所以用户无法解锁设备,因为返回和主页按钮被禁用并且键盘隐藏了解锁区域。
我试过用:
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(view.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
其中视图是 getCurrentFocus()、getWindow().getDecorView 和我的布局上的一些视图 - 没有任何效果,因为键盘被另一个应用程序调用。
另外,我的清单的一部分:
<activity
android:name=".FullscreenActivity"
android:windowSoftInputMode="stateHidden" .../>
它也不起作用。那么,如何全局隐藏键盘呢?
【问题讨论】:
-
android:imeOptions="flagNoExtractUi" 进入键盘获得焦点的字段。
-
检查这个属性 android:configChanges
-
android:imeOptions="flagNoExtractUi" 不起作用。调用键盘的第三方软件无法设置
-
@IntelliJAmiya,我在清单中添加了字符串 android:configChanges="keyboard|keyboardHidden",并且在活动类中我覆盖了 onConfigurationChange() 方法。我把 Log.d("111", "test");在里面。所以,没关系,屏幕上是否有键盘,日志不会出现