在我的程序後不恢復,我有以下層次:片段定向變化
Activity
Fragment
ViewPager + FragmentStatePagerAdapter
Fragment containing video
正在使用setRetainInstance(真)初始化該活動立即嵌套的片段。無論何時切換方向,都會導致崩潰。使用了錯誤報告中描述的解決方案:https://code.google.com/p/android/issues/detail?id=42601#c10。
不過,每當我切換方向時,應用程序都會崩潰。我發現了另一個錯誤報告+解決方案:https://code.google.com/p/android/issues/detail?id=42601#c32。
應用此解決方案後,我能夠旋轉設備,而不會崩潰應用程序。然而,深度嵌套的片段並未保留其狀態。由於此片段包含的視頻應該繼續播放,不管方向是否改變,這都是必備的。我在這裏發現了第三個錯誤報告,描述這是Android支持庫版本20中的一個已知問題:https://code.google.com/p/android/issues/detail?id=74222#c17
現在,似乎最深的碎片似乎保留了某種狀態。至少它不會被破壞,因爲視頻的音頻會在整個方向以及方向改變之後繼續播放。但是,方向更改後片段不會恢復。我只是看到一個白色的矩形,視頻應該在哪裏。
正如你所看到的,這變得荒謬可笑。我已經不得不使用三個hacky解決方案來解決ViewPager類中的錯誤,但它仍然無法正常工作。如果任何人有任何想法我可以嘗試,我會非常感激。