Chi*_*ung 8 statusbar ios cordova phonegap-build html-framework-7
我正在使用Phonegap和Framework7构建iPad应用程序,无论我做什么,我都无法将状态栏隐藏在iPad上.
我试过谷歌一些教程,包括以下问题:
我已经尝试了上述问题的所有答案中提供的解决方案,我的状态栏仍然存在.
我用xCode打开了项目,我可以看到设置配置正常:
对于部署信息中的iPhone设置:
对于部署信息中的iPad设置:
在Info > Custom iOS Target Properties,我已设置以下内容:
当deviceready事件被触发时我也尝试使用JavaScript方式:
StatusBar.hide();
Run Code Online (Sandbox Code Playgroud)
当我跑:
StatusBar.isVisible
Run Code Online (Sandbox Code Playgroud)
该属性返回false,但我仍然看到顶部的白色条.
经过长时间的调试,我终于找到了问题所在.
事实上,状态栏是隐藏的,我们将看到的白色栏是Framework7提供的叠加层,它解释了以下内容:
StatusBar.isVisible // false
Run Code Online (Sandbox Code Playgroud)
显然,Framework7隐藏了状态栏,但在应用程序的顶部留下了一个空白的白条,这是一个填充.
所以要删除栏,我不得不with-statusbar-overlay从html标签中删除该类.为此,我将以下内容添加到我的Javascript文件中:
document.documentElement.classList.remove('with-statusbar-overlay');
Run Code Online (Sandbox Code Playgroud)
请注意,必须在deviceready事件之前执行Javascript修复.否则,您将看到带有条形图的主视图,然后条形图将消失.如果你把它放在事件之前,用户将永远不会看到该栏.
document.documentElement.classList.remove('with-statusbar-overlay');
Dom7(document).on('deviceready', function(){
// Your code
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1607 次 |
| 最近记录: |