AndroidでWebViewを他のViewと同じ画面に配置する時
しばしはまったのでメモ。
Androidで、WebViewを他のViewと同じ画面に配置するような時、他のTextViewなどにフォーカスがいったん移ると、WebView部分をタッチしても、入力ボックスなどにフォーカスが移動しなくなってしまいます。
これを回避するためには、
WebView wv = (WebView) findViewById(R.id.webview); wv.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { v.requestFocus(View.FOCUS_DOWN); return false; } });
のように、WebViewがタッチされたらrequestFocusすると再び入力ボックスなどにフォーカスがあたり、文字入力が出来るようになります。