2012-09-11 72 views
0

在我的應用程序,我有一個接頭主機和3個活動A,B,C作爲標籤contents.When方向的變化,當前的活動正在重新啓動。活動B,有一個網絡視圖,我正在動態加載一些視頻鏈接。當用戶點擊這些視頻時,他們正在播放。當方向改變時,B正在重新啓動,這使得我的網絡視圖清除也無法從停止的位置恢復視頻。爲此,我想阻止只有活動B重新啓動(這只是一種情況,但我有許多其他有效的理由不殺死活動B)。如何防止重新啓動Android Tabhost中的某個動作?

我要的是如何防止只有「B」越來越摧毀和重建。我試圖重寫public void onConfigurationChanged(Configuration newConfig)
無論是在tabhost活動和Activty「B」。但它與onConfigurationChanged一起調用Activity B的onCreate方法。在B中調用創建,使我的視圖刷新並失去B活動的狀態。因此,總之,有沒有什麼辦法來防止破壞/創建(第二次)獲取調用在Android電子標籤主機的活動之一。提前致謝。

回答

-1

您需要限制的方向改變一次方向改變其他人的活動將重新啓動上。

要限制的方向變化,你需要在你的manifest文件中加入這一行所有你正在使用,否則你可以在應用程序本身添加它的活動。

<activity android:name="A" 
       android:configChanges="orientation|keyboardHidden"></activity> 
<activity android:name="B" 
       android:configChanges="orientation|keyboardHidden"></activity> 
<activity android:name="C" 
       android:configChanges="orientation|keyboardHidden"></activity> 
+0

即使那麼B的onCreate方法也被調用。清楚地閱讀我的問題。在線上方的 – vrs

+0

可以限制您的活動以重新啓動配置更改,您可以爲任何一項活動添加此行......。剩下的你可以用自己的邏輯來做。你還在尋找什麼? –

+0

我誤用了你的回答,我以爲它是不接受的。如果您將android:configChanges =「orientation | keyboardHidden」賦予活動「B」,則它不起作用。爲什麼,因爲隨着tabhost活動,所有的孩子都會摧毀。如果您同時向兩個標籤主機活動同時提供B,則它也不起作用。 – vrs

相關問題