phonegap 2.2 方向更改不会调整应用程序大小

Posted

技术标签:

【中文标题】phonegap 2.2 方向更改不会调整应用程序大小【英文标题】:phonegap 2.2 orientation change does not resize app 【发布时间】:2012-11-20 21:05:28 【问题描述】:

我在以前版本的 Phonegap 上没有这个问题。但在 2.2 中,当我更改方向时,它不会更新 uiwebview

phonegap 默认不支持横屏吗?你是怎么处理的?

【问题讨论】:

【参考方案1】:

这不是 WebView 更新的问题,而是 index.html 文档头中的元标记。

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

删除不必要的height=device-height 后一切正常

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

【讨论】:

非常感谢,height=device-height 在 android 上工作(没有受到伤害),在为 ios 删除它之后,我用 android 重新测试并发现它首先是不必要的,所以一个很好的解决方案 是的,但是如果您删除 height=device-height ,您会遇到键盘覆盖屏幕的问题。【参考方案2】:

补充斯蒂芬的回答,如果你需要在方向改变时做任何特别的事情,你可以设置一个回调函数:

window.onorientationchange

【讨论】:

【参考方案3】:

我在 ios phonegap 中也有同样的问题 ....

只需去更新 x-code 项目文件(IOS 应用程序目标)更改或更新支持界面方向并检查所有方向。

效果很好……

【讨论】:

是的,就是这样。在 Xcode Targets-> Your App -> iPhone/iPad Deployment Info -> "Supported Interface Orientations" 中。单击您希望支持的每个方向。默认情况下,似乎只启用了肖像。 在代码方面,这些选项位于platforms/ios/appname/appname-Info.plist&lt;key&gt;UISupportedInterfaceOrientations&lt;/key&gt; &lt;array&gt; &lt;string&gt;UIInterfaceConstant&lt;/string&gt; &lt;/array&gt; 将字符串UIInterfaceConstant 替换为these constants 中的任何一个(因此每个支持的方向一个字符串元素)。对于 iPad 来说也是一样,但关键是 &lt;key&gt;UISupportedInterfaceOrientations~ipad&lt;/key&gt;【参考方案4】:
window.addEventListener(
    "orientationchange",
    function() 
        // Announce the new orientation number
        location.reload();
    , false );

【讨论】:

以上是关于phonegap 2.2 方向更改不会调整应用程序大小的主要内容,如果未能解决你的问题,请参考以下文章

在 Phonegap 中,HTML 不会随着应用旋转而调整大小

CSS媒体查询方向更改不起作用PhoneGap

iPhone OS 图像/照片大小调整工具更改 EXIF 方向数据

iPhone Phonegap 方向问题

PhoneGap:iOS 7 中的 UIPickerView 不会像在 iOS 6 中那样自动调整字体大小。关于如何在 iOS 7 中实现的任何解决方案?

媒体查询断点上的 CSS 重置值(调整窗口大小或方向更改)