在 iOS phonegap 应用程序中添加 wkWebview 插件时状态栏位置不正确
status bar position is not proper when wkWebview plugin is added in iOS phonegap application
我正在使用 phonegap 开发 iOs 应用程序。
phonegap 版本:3.5.0
xcode 版本:6.1.1
我已经为状态栏添加了 "org.apache.cordova.statusbar" 插件。我的应用程序在 iOs 7 和 iOs 8 上运行良好。但是为了在 iOs 8 中获得更好的性能,我添加了 "com.telerik.plugins.wkwebview" 插件。添加此插件后,header 部分应用程序被销毁,看起来它在状态栏内。我还附上了这个问题的图片。我在 my_project-info.plist 文件中添加了以下 属性:
Status bar is initially hidden : NO
View controller-based status bar appearance : YES
您可以使用以下步骤解决此问题
1) 转到您的项目资源管理器,单击 class 文件夹,那里有文件 "MainViewController.m",添加代码
- (BOOL)prefersStatusBarHidden {
return YES;
}
2) 转到您的项目资源管理器,单击 Resources 文件夹,其中有类似 "Your_project_name-Info.plist" 的文件,将其添加为密钥 View controller-based status条形图外观 和值YES.
从 MainViewController.m 文件中找到“- (void)viewWillAppear:(BOOL)animated”方法并将该方法替换为以下代码。
- (void)viewWillAppear:(BOOL)animated
{
// View defaults to full size. If you want to customize the view's size, or its subviews (e.g. webView),
// you can do so here.
//Lower screen 20px on iOS 7 and iOS 8
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7){
CGRect viewBounds = [self.webView bounds];
viewBounds.origin.y = 20;
viewBounds.size.height = viewBounds.size.height - 20;
self.webView.frame = viewBounds;
}
[super viewWillAppear:animated];
}
这个解决方案对我有用。
我正在使用 phonegap 开发 iOs 应用程序。
phonegap 版本:3.5.0
xcode 版本:6.1.1
我已经为状态栏添加了 "org.apache.cordova.statusbar" 插件。我的应用程序在 iOs 7 和 iOs 8 上运行良好。但是为了在 iOs 8 中获得更好的性能,我添加了 "com.telerik.plugins.wkwebview" 插件。添加此插件后,header 部分应用程序被销毁,看起来它在状态栏内。我还附上了这个问题的图片。我在 my_project-info.plist 文件中添加了以下 属性:
Status bar is initially hidden : NO
View controller-based status bar appearance : YES
您可以使用以下步骤解决此问题
1) 转到您的项目资源管理器,单击 class 文件夹,那里有文件 "MainViewController.m",添加代码
- (BOOL)prefersStatusBarHidden {
return YES;
}
2) 转到您的项目资源管理器,单击 Resources 文件夹,其中有类似 "Your_project_name-Info.plist" 的文件,将其添加为密钥 View controller-based status条形图外观 和值YES.
从 MainViewController.m 文件中找到“- (void)viewWillAppear:(BOOL)animated”方法并将该方法替换为以下代码。
- (void)viewWillAppear:(BOOL)animated
{
// View defaults to full size. If you want to customize the view's size, or its subviews (e.g. webView),
// you can do so here.
//Lower screen 20px on iOS 7 and iOS 8
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7){
CGRect viewBounds = [self.webView bounds];
viewBounds.origin.y = 20;
viewBounds.size.height = viewBounds.size.height - 20;
self.webView.frame = viewBounds;
}
[super viewWillAppear:animated];
}
这个解决方案对我有用。