Cordova iOS无法禁用Keyboard Shrinks View

Żab*_*jad 5 ios cordova

使用iOS 8.1上的最新Cordova,似乎无法阻止键盘缩小视图高度.

我尝试了以下设置:

  • 在我的config.xml中:

    <preference name="KeyboardShrinksView" value="false" />
    
    Run Code Online (Sandbox Code Playgroud)
  • 在index.html视口标记中:

    <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height" />

    要么

    <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width" />

    要么

    <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1" />

这些都不会禁用缩小行为.

我怎么能阻止键盘缩小iOS上的视图?

Ask*_*keG 1

我遇到了一个非常不同的问题。我无法让 cordova 像以前那样调整 webview 的大小^^。

关于 org.apache.cordova.labs.keyboard<preference name="KeyboardShrinksView" value="false" />插件 中的 ios7 及更高版本忽略此。

代码指出:

// No-op on iOS7.  It already resizes webview by default, and this plugin
// is causing layout issues
// with fixed position elements.  We possibly should attempt to implement 
// shrinkview = false on iOS7.
if (!IsAtLeastiOSVersion(@"7.0")) { ... }
Run Code Online (Sandbox Code Playgroud)

我怀疑罪魁祸首/救世主就在元标签中。这就是我要去寻找的地方。

目前我的看起来像这样:

'<meta name="viewport" content="width=' + viewPortWidth + ', user-scalable=no, initial-scale=1, maximum-scale=1' + extra + '"/>'
Run Code Online (Sandbox Code Playgroud)

其中viewPortWidth取决于设备,如果是 iPhone,则为 320,如果extratarget-densityDpi=device-dpiAndroid,则为 320

希望能帮到你一点点