我使用 IBM Worklight 开发了一个应用程序并将其部署在 iOS7 设备上。我注意到,当导航屏幕移到上方并且状态栏在屏幕上方停留 1 秒钟,然后屏幕下降到其自然位置。当我们从一个屏幕导航到另一个屏幕时会发生这种情况。任何人都知道如何禁用此运动。这在 iOS 6 设备中没有发生。
我用过 Dojo,我的 Worklight 版本是 6.0.0.1
问候,V@run
我使用 IBM Worklight 开发了一个应用程序并将其部署在 iOS7 设备上。我注意到,当导航屏幕移到上方并且状态栏在屏幕上方停留 1 秒钟,然后屏幕下降到其自然位置。当我们从一个屏幕导航到另一个屏幕时会发生这种情况。任何人都知道如何禁用此运动。这在 iOS 6 设备中没有发生。
我用过 Dojo,我的 Worklight 版本是 6.0.0.1
问候,V@run
正如 Nathan Hazout 在TechNote中指出的那样,Worklight 将尝试在屏幕顶部留出 20px 以适应 iOS7 状态栏。
这是通过以下方式完成的:
(您可以通过使用 Web Inspector 查看 Worklight 应用程序 DOM 元素来检查)
此解决方案并不总是有效,在您的情况下,它似乎只部分有效。
当“showIOS7StatusBar”设置为 false 时,Worklight 将不会尝试处理 iOS7 状态栏,而将此任务完全留给您。值得注意的是,在 iOS6 及以下状态栏是由操作系统自动处理的。
关于您的问题没有足够的信息,所以我只能提供一般性建议。对我来说效果很好的是使用 CSS Media Queries将“padding-top:20px”添加到“body”元素,如下所示:
@media (min-height: 568px) and (orientation: portrait), (min-height: 320px) and (orientation: landscape) {
#content {
padding-top: 20px;
}
}
这是因为在 iOS7 上 iPhone 的高度是 568px,而在 iOS6 及以下是 548px(“document.documentElement.clientHeight”)。对于横向,值分别为 320px 和 300px。我也喜欢这个解决方案,因为它更符合RWD方法。
随着这个建议的变化,我已经能够在我的小项目中相对较好地处理状态栏,但请记住,您的里程可能会有所不同。