Nat*_*ann 6 android backwards-compatibility webview android-fragments
我正在使用兼容包,我有一个Fragment谁WebView在onCreateView中返回一个.问题是如果在onCreate期间没有添加片段,Activity那么在WebView软键盘内部单击文本框时不会显示.如果在添加自定义Web片段后旋转设备,则重新创建活动,然后在单击文本字段时显示软键盘.
只是要清楚以下是两种不同的场景
public void onCreate(Bundle state){
if(state == null){
WebFragment web = new WebFragment();
getSupportFragmentManager.beginTransaction().add(android.R.id.content, web).commit();
}
}
public void onClick(View v){
WebFragment web = new WebFragment();
getSupportFragmentManager.beginTransaction().add(android.R.id.content, web).commit();
}
Run Code Online (Sandbox Code Playgroud)
在第一种情况下,在Activity onCreate方法中添加片段时,片段中包含的WebView在按下文本字段时应该正常工作.但是,在第二个示例中,单击webview中的文本字段时没有任何反应,除非在显示webview后旋转设备.有人可以提供一个解决方案,如果我必须为我的片段创建一个新的活动才能正常工作,它首先要胜过片段的目的.
k7k*_*7k0 11
将其添加到Fragment的onCreateView方法中
webview.setOnTouchListener(new View.OnTouchListener() {
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;
}
});
Run Code Online (Sandbox Code Playgroud)
测试了android 2.3.3和3.2.0.
| 归档时间: |
|
| 查看次数: |
2253 次 |
| 最近记录: |