Window 管理器添加的叠加视图隐藏了键盘 (Android)
Overlay view added by Window Manager hides keyboard (Android)
我在 Window 管理器中添加了一个视图,一个可以拖动的叠加按钮,但是在需要任何类型的文本输入时,键盘不会像它那样弹出以前是。这仅在我删除该视图时有效。它是由具有以下 LayoutParams 的服务添加的按钮:
params = new WindowManager.LayoutParams(
button_size, button_size,
WindowManager.LayoutParams.TYPE_SYSTEM_ALERT, WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL
, PixelFormat.TRANSPARENT);
params.gravity = Gravity.LEFT | Gravity.TOP;
我做了一些研究,我也尝试将其添加到 Android 清单中:
android:windowSoftInputMode="stateVisible|adjustResize"
但这也没有用。
因为我没有找到任何相关的 questions/answers,有人可以帮助我吗?
提前致谢!
我通过添加得到它
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
到 LayoutParams 标志。
这对我有用:
params = new WindowManager.LayoutParams(
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.TYPE_PRIORITY_PHONE,
WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN |
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE |
WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL |
WindowManager.LayoutParams.FLAG_SPLIT_TOUCH |
WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM,
PixelFormat.TRANSLUCENT);
这会将添加的视图放在键盘后面。
我在 Window 管理器中添加了一个视图,一个可以拖动的叠加按钮,但是在需要任何类型的文本输入时,键盘不会像它那样弹出以前是。这仅在我删除该视图时有效。它是由具有以下 LayoutParams 的服务添加的按钮:
params = new WindowManager.LayoutParams(
button_size, button_size,
WindowManager.LayoutParams.TYPE_SYSTEM_ALERT, WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL
, PixelFormat.TRANSPARENT);
params.gravity = Gravity.LEFT | Gravity.TOP;
我做了一些研究,我也尝试将其添加到 Android 清单中:
android:windowSoftInputMode="stateVisible|adjustResize"
但这也没有用。
因为我没有找到任何相关的 questions/answers,有人可以帮助我吗?
提前致谢!
我通过添加得到它
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
到 LayoutParams 标志。
这对我有用:
params = new WindowManager.LayoutParams(
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.TYPE_PRIORITY_PHONE,
WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN |
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE |
WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL |
WindowManager.LayoutParams.FLAG_SPLIT_TOUCH |
WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM,
PixelFormat.TRANSLUCENT);
这会将添加的视图放在键盘后面。