iv的任务是创建和使用Cordova Inappbrowser的应用程序。
我正在使用官方的inappbrowser插件和statusbar插件。所有插件都是最新的!
更改设备的方向时会出现问题,左上角会出现一个灰色块。我使用了XCode的模拟器和环境检查器工具来尝试找出带有灰色块的内容,但很幸运,它只是不想被检查。我已经测试了一些设备iPhone 6和7+以及iPad mini 4,但它仍显示在设备上。
我的config.xml代码隐藏状态栏
<platform name="ios">
<config-file parent="UIStatusBarHidden" platform="ios" target="*-Info.plist">
<true />
</config-file>
<config-file parent="UIViewControllerBasedStatusBarAppearance" platform="ios" target="*-Info.plist">
<true />
</config-file>
<allow-intent href="itms:*" />
<allow-intent href="itms-apps:*" />
</platform>
和我的浏览器代码
var url = "https://imgur.com/";
var ref = cordova.InAppBrowser.open(url, '_blank', 'location=no,toolbar=no');
我的第一个问题是与inappbrowser中使用的URL有关,但是我已经测试了几个站点,每个站点都产生了相同的结果。
我使用状态栏插件来隐藏状态栏,这是可行的。
在这里,当方向改变时,请注意灰色块。
最佳答案
将其添加到CDVInAppBrowserNavigationController实现中的CVDInAppBrowser.m中,可以达到以下目的:
- (void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator
{
CGRect frame = [UIApplication sharedApplication].statusBarFrame;
[_bgToolbar setFrame:CGRectMake(frame.origin.x, frame.origin.y, size.width, frame.size.height)];
[super viewWillTransitionToSize:size withTransitionCoordinator:coordinator];
}
变量_bgToolbar是在viewDidLoad方法中初始化的变量。
希望这可以帮助!
关于ios - iOS 11.2 Cordova Inappbrowser在方向更改时添加了灰色块,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46663649/