2017-10-10 34 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方法?先謝謝你 –