2012-09-28 22 views
5

每次我將一個片段附加到我的活動中時,我想註冊它以接收來自活動的事件。這很容易,因爲我可以覆蓋FragmentActivity#onAttachFragment(Fragment)。當從活動中刪除片段時,我想從接收事件中取消註冊。我預計會有類似的onDetachFragment事件,但我沒有找到它。FragmentActivity#onDetachFragment在哪裏?

有沒有另一種方法可以完成我想要做的事情?我希望在活動中保持註冊/取消註冊,而不是將其移動到基本片段類別(我可以使用onAttach/onDetach)。

+0

它更好地使用片段中的onStart(),onStop()方法。只需將getActivity()投射到您的調用活動類。 –

+0

@Anis它看起來像是唯一可用的方法。如果你讓你的評論成爲答案,我會接受它。 –

回答

0

它更好地使用片段中的onStart(),onStop()方法。只需將getActivity()投射到您的調用活動類。

+0

你能解釋一下爲什麼這樣更好嗎? – Laimiux

+0

它更好,因爲在這個階段片段被附加到其父活動。 –

+2

對於父級來說,設置片段上的監聽器與從父代中獲取監聽器的片段不是更好的設計嗎? – Laimiux