MobileFirst混合应用程序视图与iOS7中的状态栏重叠



对于iOS7视图重叠状态栏问题,我在这个论坛中看到了解决方案,但是,当我们使用IBM MobileFirst平台开发混合应用程序时,我们不能使用这些解决方案。我们不喜欢引入任何特定于操作系统的代码。MobileFirst有什么建议的解决方案吗?我们可以在index.html文件中检测iOS版本,并在文档正文的边缘添加20px。有更好的解决方案吗?

通常情况下,您不应该做任何事情。MFP框架检测iOS版本并自动应用CSS,这样状态栏(它不是应用程序的一部分,而是在应用程序之外)就不会与顶部的内容重叠。

这有时会在使用第三方框架(如jQueryMobile)时重新引入。

解决方案实际上是应用特定于环境的CSS(顺便说一句,在MFP中,这是一件非常有效的事情,在您的app\iphone\CSS文件夹中,与JavaScript结合用于平台检测)。

还有一个解决方案,那就是更改应用程序,这样即使使用iOS 7及以上版本,状态栏也会像以前版本的iOS一样。也就是说,在应用程序之外,而不是应用程序的一部分

为此,您需要打开common\js\initOptions.js并添加showIOS7StatusBar,设置为false

您可以在以下IBM技术说明中阅读有关状态栏支持的更多信息:http://www-01.ibm.com/support/docview.wss?uid=swg27039574

这种css方法似乎不完全适用于我。应用程序的初始呈现会很好,但如果键盘弹出,可滚动视图会覆盖通知栏。initOptions.js中的showIOS7StatusBar似乎也没有将通知栏放在我的MobileFirst 6.3应用程序之外。然而,这种方法(编写iOS本机代码以明确限制WebView)确实对我有效…

带有Phonegap 的iOS 7状态栏

最新更新