引言
在使用FragmentTabHost的Fragment里面嵌入一个WebView的时候,你会发现html中的输入框无法输入英文或者数字。
当输入英文或者数字的时候,输入框就失去了焦点(在一些机型上表现出来的症状)。
类似的问题有关很多讨论,请参考下面的连接:
https://code.google.com/p/android/issues/detail?id=64153
https://code.google.com/p/android/issues/detail?id=7189
http://www.eoeandroid.com/thread-312932-1-1.html
不过上面提到的解决方法大多带有随机性,我自己的解决办法如下:
// 解决输入框不能输入的bug
mWebView.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
case MotionEvent.ACTION_UP:
v.requestFocusFromTouch();
break;
case MotionEvent.ACTION_MOVE:
break;
case MotionEvent.ACTION_CANCEL:
break;
}
return false;
}
});
WebView设置如上代码,完美解决BUG!