Я показываю webView
как alertDialog
из службы, когда мое приложение не работает на переднем плане, поэтому My webView
прикрепляется к экрану методом WindowManager.addView()
.
В webView
есть поле input
, которое я хочу сделать доступным для пользователя.К сожалению, когда пользователь нажимает на поле input
, , на нем не отображается клавиатура, позволяющая пользователям вводить .
Мой webView
находится внутри cardView
, параметры которого следующие:
public WindowManager.LayoutParams getParamsForOpenWebView() {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.O) {
WindowManager.LayoutParams params = new WindowManager.LayoutParams(
WindowManager.LayoutParams.MATCH_PARENT,
WindowManager.LayoutParams.MATCH_PARENT,
WindowManager.LayoutParams.TYPE_PHONE,
WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM
| WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL
| WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH
| WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS,
PixelFormat.TRANSLUCENT);
params.gravity = Gravity.START | Gravity.TOP;
params.x = left;
params.y = top;
return params;
} else {
WindowManager.LayoutParams params = new WindowManager.LayoutParams(
WindowManager.LayoutParams.MATCH_PARENT,
WindowManager.LayoutParams.MATCH_PARENT,
WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY,
WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM
| WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL
| WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH
| WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS,
PixelFormat.TRANSLUCENT);
params.gravity = Gravity.START | Gravity.TOP;
params.x = left;
params.y = 200;
return params;
}
}
Если я подключу телефон к ноутбуку и использую клавиатуру ноутбука, чтобы добавить входы к входуполе, работает нормально но просто клавиатура на телефоне не всплывает.
Кроме того, вход находится внутри webView
, поэтому я не могу использовать View.requestFocus()
, чтобы получить фокус, в отличие от EditText
.
. Я был бы очень признателен за любую помощь относительно того, какзапросите фокус на webView
, чтобы разрешить ввод.