2017-10-10 64 views
1

我负责创建和使用Cordova Inappbrowser的应用程序。 我使用官方inappbrowser插件和状态栏插件。所有插件都是最新的!IOS 11.2 Cordova Inappbrowser在方向更改上增加了一个灰色块

当设备的方向改变时,问题发生,灰色块出现在左上角。我已经使用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> 

和我inappbrowser代码代码

var url = "https://imgur.com/"; 
    var ref = cordova.InAppBrowser.open(url, '_blank', 'location=no,toolbar=no'); 

我的第一个虽然是问题是关系到URL中inappbrowser被使用,但我测试了几个网站,每个网站都产生了相同的结果。

即时通讯使用状态栏插件隐藏状态栏,它工作。

App on Start up. no grey block

和继承人当上取向改变通知的灰色块。

enter image description here

回答

0

添加这CVDInAppBrowser.m,所述CDVInAppBrowserNavigationController实现中,是卓有成效的:

- (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方法初始化。

希望这会有所帮助!

+0

你能澄清在viewDidLoad方法的_bgToolbar如何应该工作,我只有在方法的变量bgToolbar,是另外一个意思是一个参考,也许你可以添加你viewDidLoad方法?先谢谢你 –