68

我知道,一個片段的視圖層次結構有onCreateView要充氣,但也可以是其他什麼功能在onCreateView對什麼應該等待onActivityCreated?我目前的實現使用單獨的一切活動,一個典型的活動在其onCreate方法中完成大部分工作,包括擴展視圖,設置內容視圖,使用數據初始化各種小部件,設置監聽器等。Android的碎片onCreateView與onActivityCreated

那麼這可能全部被移入onCreateView,或者應該將一些函數放入onActivityCreated方法嗎?

回答

71

如果你的觀點是靜態的,那麼任何代碼移動到onActivityCreated方法是沒有必要的。但是,例如,當您從適配器中填充一些列表時,應該在onActivityCreated方法中執行此操作,並在setRetainInstance用於執行時恢復視圖狀態。

也在訪問父活動的視圖層次必須在onActivityCreated來完成,而不是更早。

+0

爲什麼它不是在「靜態」的情況下,需要?似乎每個人都有這個,但我沒有。 – Diffy

+5

不要以爲每個人都知道,Diffy,但他們只是滿意答案:) – Boy

+7

@Diffy,他的意思是通過靜態視圖,顯示給用戶的視圖只不過是膨脹的xml佈局。編碼或運行時無需修改。 –