【问题标题】:Softkeyboard in PhoneGap covers input elementsPhoneGap 中的软键盘涵盖了输入元素
【发布时间】:2014-02-21 09:11:53
【问题描述】:

我已经多次看到这个问题,但似乎没有一个答案对我有用。我怀疑我做了一些非常愚蠢的事情,并且错过了显而易见的事情(对等编程+1?)

使用 PhoneGap (Cordova) 2.0.0 为 Android(SDK 版本 8+)开发。我有一个用于用户设置输入的整页表单,页面下方有等间距的元素,最底部有取消和提交按钮。当用户触摸上部元素时,软键盘弹出,没有问题。但是,如果用户触摸了软键盘下方的元素(如果它正在显示),那么当它弹出时,它就会被键盘覆盖。

我在清单文件中尝试了 android:windowSoftInputMode="adjustPan" 的各种咒语和化身(基于http://solutions.michaelbrooks.ca/2011/07/05/android-soft-keyboard-resizes-web-view/http://developer.android.com/guide/topics/manifest/activity-element.html#wsoft),但无济于事,元素将被键盘隐藏。

我的清单文件的相关部分如下所示

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".title"
        android:label="@string/title" android:screenOrientation="portrait">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
        android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale"
        android:windowSoftInputMode="adjustPan"
    </activity>
</application>

以及 index.html 的视口部分(我看过一些关于更改的帖子)

<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0, minimum-scale=1.0, maximum-scale=1.0">

任何指针将不胜感激

干杯

【问题讨论】:

标签: cordova keyboard hidden


【解决方案1】:

代替

android:windowSoftInputMode="adjustPan" 

试试

android:windowSoftInputMode="adjustResize"

【讨论】:

    【解决方案2】:
    android:windowSoftInputMode="adjustResize"
    

    在我的手机上运行良好 (4.1)

    【讨论】:

      【解决方案3】:

      这对我来说也是一个大问题,在 Android 2.x 和早期的 4.x 上。

      如果我错了,请纠正我,但我认为 android:windowSoftInputMode 用于本机开发,并在活动启动时应用。更改该设置似乎并没有影响我的 PhoneGap/Cordova 项目。

      当编辑字段获得焦点时,我将窗口显式滚动到适当位置:

      onFocusEditField = function(comp, e, eopts) {
          if(Ext.os.is.Android) {
              var ost = comp.element.dom.offsetTop;
              this.getParent().getParent().getScrollable().getScroller().scrollTo(0, ost-50);
          }
      };
      

      注意:使用 Sencha Touch 2.x.

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多