2012-01-09 22 views
0

我有不同的設計potrait和景觀activity.so我使用佈局土地佈局。我把webview裏面的片段和給setRetainInstance(true)和loding url像谷歌。當配置改變它再次加載可以告訴如何避免.i我沒有提到在android manifest文件中的android:configchanges =「orientation」,因爲 不同的設計可以幫助這個問題的任何人嗎?setRetainInstance不工作的配置變化在android

感謝

回答

1

片段實際上可以使這個輕鬆了許多。只需使用方法Fragment.setRetainInstance(boolean)即可在配置更改中保留您的片段實例。請注意,這是文檔中Activity.onRetainnonConfigurationInstance()的推薦替代品。

如果由於某種原因,您確實不想使用保留的片段,您還可以採取其他方法。請注意,每個片段都有一個由Fragment.getId().返回的唯一標識符。您還可以通過 Fragment.getActivity().isChangingConfigurations()瞭解是否正在拆除配置更改的片段。因此,在您決定停止AsyncTask(最有可能在onStop()或onDestroy()中)的地方,可以例如檢查配置是否正在改變,如果是這樣,則將其粘貼到片段標識符下的靜態SparseArray中,然後在你的onCreate()或onStart()函數中查看是否有可用的稀疏數組中的AsyncTask。