6

我在 webview 中有一个输入字段,当单击输入时,会显示键盘,但它会出现在输入字段上。我尝试放入windowSoftInputMode="adjustPan"androidManifest 但仍然相同。在设备的浏览器中打开相同的 html 页面时,一切正常。有任何想法吗 ?

问候

更新:

它没有 XML 布局,因为我使用 Phonegap 框架并且 Activity 扩展了 DroidGap,而且它没有setContentView(xx.xml)方法。

public class TestActivity  extends DroidGap {

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
        setIntegerProperty("loadUrlTimeoutValue", 30000);
        super.loadUrl("file:///android_asset/www/index.html");
    }
}
4

5 回答 5

6

我似乎有完全相同的问题并添加

android:windowSoftInputMode="adjustPan"

像您一样添加到 AndroidManifest.xml 文件。这不起作用,最后有人指出使用

android:windowSoftInputMode="adjustResize"

反而。这现在对我有用。adjustPan 似乎更有意义,而 adjustResize 听起来是错误的,但它确实有效。

于 2013-01-17T19:22:38.447 回答
1

在 phonegap 中有特定设备的偏好。请参阅此页面上的配置:https://build.phonegap.com/docs/config-xml而对 config.xml 进行更改的解决方案是:

preference name="android-windowSoftInputMode" value="stateVisible|adjustResize"
于 2013-10-08T14:24:39.230 回答
1

尝试将首选项全屏更改为 false

<preference name="fullscreen" value="false" />

我试过了,成功了!

于 2014-03-19T16:41:08.123 回答
1

结合上面的答案,它对我有用:

<preference name="android-windowSoftInputMode" value="stateVisible|adjustResize"/>

和:

<preference name="fullscreen" value="false"/>
于 2016-05-08T13:07:52.610 回答
0

嗨,您可以使用 js 和 css 代码来完成。那对我有用。

JS:

$("form input,textarea,select").focusin(function (){

    $(".scrollablefield").animate({
        scrollTop: $(this).offset().top
    }, 600);
  });

CSS:

form{
    padding-bottom: 300px;
}
于 2019-03-07T13:52:21.537 回答