Мягкая клавиатура + Жесткая клавиатура одновременно в веб-просмотре

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

Я перепробовал много вещей, которые нашел, и ничего не работает.

Я попробовал: 1)

InputMethodManager imm = (InputMethodManager) getApplicationContext().getSystemService(Context.INPUT_METHOD_SERVICE); 
 imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0);

2)

webView.requestFocus(View.FOCUS_DOWN);
 webView.setOnTouchListener(new View.OnTouchListener()
   {
    @Override
     public boolean onTouch(View v, MotionEvent event)
    {
      switch (event.getAction())
      {
        case MotionEvent.ACTION_DOWN:
        case MotionEvent.ACTION_UP:
            if (!v.hasFocus())
            {
                v.requestFocus();
            }
            break;
       }
      return false;
    }
   });

И некоторые другие вещи

Мне удалось заставить его работать на Samsung с рутом, но в моем Nexus 7 также с рутом я не могу.

Любая помощь будет оценена. Спасибо

1 ответ

Решение

Вы можете определить, присутствует ли клавиатура, и если нет, показать программную клавиатуру для нужного вида / элемента.

образец кода:

if (getResources().getConfiguration().keyboard == 0)
{
     InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); 
     imm.showSoftInput(** view/item **, InputMethodManager.SHOW_IMPLICIT); 
}
Другие вопросы по тегам