PhoneGap 3.3 iOS KeyboardShrinksView

Posted

技术标签:

【中文标题】PhoneGap 3.3 iOS KeyboardShrinksView【英文标题】: 【发布时间】:2014-02-12 20:55:25 【问题描述】:

在 PhoneGap/Cordova 3.3(和 3.2)中,用于 ios 的首选项 KeyboardShrinksView 已消失,并已替换为 enableViewPortScale

谁能向我解释如何通过使用 enableViewPortScale 和 viewport Metatag 来获得与 KeyboardShrinksView 相同的结果?

在 iOS 中,如果用户打开键盘,我需要缩小整个视图。

【问题讨论】:

【参考方案1】:

这是我最终做的:

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

感谢@daniel-miller,上面的答案来自他这里:

Keyboard hides iOS input fields in PhoneGap Build 3.1 with an iFrame/object and JQTouch

其他帮助: https://groups.google.com/forum/#!topic/phonegap/87K3lYr6f40

【讨论】:

我有一个问题,当键盘显示后。视图比屏幕大,所以我有水平滚动。这解决了谢谢:-)【参考方案2】:

删除这些(参见https://issues.apache.org/jira/browse/CB-4978)的提交状态:

键盘首选项已从核心中移除并放入其自己的插件中,位于 cordova-labs 插件分支中。

我已经追踪到 https://github.com/apache/cordova-plugins/tree/master/keyboard 和这个分叉 (?):https://github.com/etiennea/phonegap-keyboard

这应该允许你使用

Keyboard.shrinkView(true)

在你的 JS 中缩小 KeyboardShrinksView 的旧功能

【讨论】:

虽然我给了你一个赞成票,但我不能接受这个答案。它确实有帮助,但问题是以新的方式实现这一结果。感谢您的链接! :D Keyboard.shrinkView(false);Keyboard.hideFormAccessoryBar(false); 似乎对带有最新 Cordova 的 iOS 8.1 完全没有影响...是否有任何特定设置可以使它工作? 刚刚注意到了。正要寻找 enableViewPortScale。 有人找到 iOS >= 7 的解决方案吗? height=device-height 对我不起作用。 我也在寻找 iOS >= 7 的修复方法

以上是关于PhoneGap 3.3 iOS KeyboardShrinksView的主要内容,如果未能解决你的问题,请参考以下文章

未找到 Phonegap 3.3/Cordova iOS 地理位置

使用 AngularJS 在 iOS 的 PhoneGap 3.3 中登录 XCODE

phonegap 3.3 iOS Facebook Connect redirect_uri 必须是绝对的

链接到 iOS PhoneGap 3.3 上的本地文件 (cdvfile://)

Cordova/Phonegap 3.1 键盘(仍然)覆盖焦点表单字段 - iOS 7

deviceready 处理程序未被调用 ios phonegap 3.3.3