簡體   English   中英

Cordova:在iOS上屏幕方向從橫向更改為縱向時,Inappbrowser中斷了UI

[英]Cordova : Inappbrowser breaks UI while Screen orientation changes from landscape to portrait on iOS

我正在使用cordova 5.4.1開發應用程序,我也在使用最新的InAppBrowser插件。 以下是重現該問題的步驟。

  1. 在InAppBrowser中打開URL
  2. 將應用的方向從縱向更改為橫向
  3. 按InAppBrowser的完成按鈕並僅以橫向模式檢查應用程序,您將獲得一些空白部分

我正在使用iOS 9.2.1

如果有人遇到相同問題並已解決,請告訴我。

先感謝您。

我知道這有點晚了但是我想分享一下如果你或其他任何人遇到這個問題我如何解決這個問題。

正如在jcesarmobile的評論中提到的問題中指出的那樣,似乎cordova-plugin-statusbarcordova-plugin-inappbrowser不能很好地配合使用。 票務狀態顯示已解決,盡管我仍然遇到此問題。 要修復它,你可以刪除插件,或者,如果你需要插件,那么你可以添加一個事件監聽器來隱藏然后在退出時再次顯示它:

openUrl(url) {
  let ref = cordova.InAppBrowser.open(url, '_blank', options);

  ref.addEventListener('exit', () => {
    StatusBar.hide();
    StatusBar.show();
  })
}

StatusBar.hide()是解決此問題的方法。

編輯:正如René在此類似問題的評論中所述,iPad中存在一個空白列,其中包含上述修復程序。 為了在iPhone和iPad上完全解決此問題而不必刪除插件,請將StatusBar.show()調用包裝在setTimeout的秒內:

openUrl(url) {
  let ref = cordova.InAppBrowser.open(url, '_blank', options);

  ref.addEventListener('exit', () => {
    StatusBar.hide();

    setTimeout( () => {
      StatusBar.show();
    }, 1000)
  })
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM