Проблема с WebView и программной клавиатурой

Я хочу показать мягкую клавиатуру, пока моя основная деятельность не будет уничтожена.

Я могу сделать это через:

  1. Добавление следующего параметра в тег активности в моем файле манифеста
android:windowSoftInputMode="stateAlwaysVisible"
  1. Добавление следующего кода в процесс onCreate() активности:
EditText editText = (EditText)findViewById(R.id.enter);
((InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE)).
                     showSoftInput(editText, InputMethodManager.SHOW_FORCED);

Однако после того, как я добавлю WebView в свою основную деятельность, ситуация изменится.

Когда WebView начинает загружать указанный URL-адрес, виртуальная клавиатура исчезает.

Или когда я нажимаю на WebView, он снова исчезает. Я не знаю, в чем причина.


person manshuai    schedule 07.02.2012    source источник


Ответы (1)


Вместо навигации по URL-адресу проверьте, можете ли вы получить HTML-код и отобразить его с помощью AJAX или Java HTTP URL-подключения.

Может показаться хромым, но любые изменения URL вызовут сбой программной клавиатуры. На самом деле, даже если вы используете метод loadUrl() для - javascript:someJSMethod(), даже это вызывает сбой программной клавиатуры, поскольку браузер считает, что URL-адрес изменился.

person Swaroop    schedule 03.08.2012