2011-05-20 67 views
0

我有一個應用程序與多個活動和多個佈局。但是,一些佈局包含在幾項活動中。我也有一個線程更新這個佈局。但是,當我切換活動它不起作用。由於包含了佈局,因此元素具有相同的ID,它不應該只是起作用嗎?或者我真的需要爲佈局中的每個元素獲取一個對象,並將它提供給我的線程,以便更新新活動中的元素?包含的佈局 - 在多個活動中更新

+0

獲取佈局ID並使其成爲具有公共訪問說明符的實例變量..其不良編程習慣,但可能工作...發佈錯誤日誌.. – ngesh 2011-05-20 12:53:47

回答

0

您應該爲每個活動/視圖運行更新代碼,儘管包含的XML是相同的,每個都是不同的實例。

我的建議是重新啓動驗證是否有任何修改在每個活動中做,一個簡單的方法是每個Activity擴展一個具有此代碼的BaseActivity。

0

我在我的應用中包含廣告佈局,但在使用它的每個活動中,廣告都需要重新加載。

如果我從返回上一個活動時使用相同的包含佈局的活動調用活動,它仍然存在。

我想這是你所看到的....

0

所以,你也可以保存內部sharedPreferences數據(如果是小數據和原始OBJETS或parceable對象)。

此外,您可以擴展Application類並將數據存儲在那裏並更新onResume()方法內的每個活動。我相信這是處理這個問題的最好方法。這很容易做到。

要求谷歌關於擴展應用程序類,他將提供噸如何做到這一點的結果。它是一種在活動之間傳遞數據的簡單方法,並且/或者保留對您將在整個應用中使用的單個對象的引用。當你不再需要它時,只需要小心地清除它,因爲它將保持存在,直到應用程序完成()(它隨應用程序擴展一起生效,貫穿整個應用程序生命週期)。

相關問題