2014-01-17 163 views
1

據我瞭解,在片段onCreate中創建片段事件監聽器會不會更好?如果在onCreateView中完成,每次片段回到視圖(onResume())時都必須重做?它會在什麼地方設置?Android片段事件監聽器

+0

你在說什麼事件? – kcoppock

+0

它主要是onclick事件。我認爲我現在已經填補了我的理解空白,但是仍然有興趣知道您將在onCreate中設置哪些事件?有人得到其他UI事件的事件嗎?如果可能的話,將不勝感激! – Chris

回答

3

事件在視圖上設置,因此在恢復視圖時會恢復。例如,假設我們在onCreateView中創建的片段中的按鈕上設置了一個偵聽器。如果在某個時間點,如果片段被恢復(沒有調用onCreateView),該按鈕將與設置的偵聽器一起恢復。設置按鈕的文本/背景也是一樣 - 每次片段恢復時,不必重置文本/背景。

+0

我明白了,我錯過了關聯視圖在onCreateView中實例化的部分。我也有這樣的印象:如果視圖恢復,它會每次回想一下onCreateView方法,這對我來說是錯誤的。感謝您向我解釋! – Chris

+0

您認爲每次片段被恢復時都會調用onCreateView,這並非錯誤。每次片段得到恢復時,onCreateView都會被調用。在我的回答中,我正在考慮onCreateView的假設情況,而這個情況實際上從未發生過。請參閱此 - http://stackoverflow.com/questions/18428152/stop-fragment-from-recreated-after-resume – Srikanth

8

1)是的,它可以更好

2)是的,你是正確的,因爲事件偵聽器初始化有比過程將在這裏重複

enter image description here

3)請有親密看看生命週期的方法

4)它總是在你正在使用和初始化時的區別。

+0

我明白你的意思。我的印象是onResume會調用onCreateView。我發現以下鏈接相當不錯,讓別人想到同樣的事情:https://www.inkling.com/read/programming-android-mednieks-1st/chapter-11/visualizing-the-fragment-生活 – Chris