Fragment詳解
add執行動作如下圖:
detach執行動作如下圖:
activity-destroy執行動作如下圖:
remove執行動作如下圖:
hide/show不執行生命周期,即他把fragment壓入棧而已,作用:小項目可用hide/show來提高效率,大型項目需要考慮內存問題。。。
add->hide:
add->detach->hiden:
結論:hide/show不影響狀態
add->detach->hiden->show:
同證如上結論;
add->hiden->show:
onhidenchanged()測試結果:只有hide和show會觸發
replace執行動作如下圖:
但replace后的fragment沒有tag
詳細清單如下:
fragment:
(fragment)The?core?series?of?lifecycle?methods?that?are?called?to?bring?a?fragment?up?to?resumed???????????????????????????????????????????state
(interacting?with?the?user)?are:
onAttach(Activity)called?once?the?fragment?is?associated?with?its?activity.
onCreate(Bundle)called?to?do?initial?creation?of?the?fragment.
ViewGroup,?Bundle)creates?and?returns?the?view?hierarchy?associated?with?the?fragment.
onActivityCreated(Bundle)tells?the?fragment?that?its?activityhas?completed?its?ownActivity.onCreate().
onViewStateRestored(Bundle)tells?the?fragment?that?all?of?thesaved?state?of?its?view?hierarchy?has?been?restored.
onStart()makes?the?fragment?visible?to?the?user?(based?on?its?containing?activity?being?started).
onResume()makes?the?fragment?begin?interacting?with?the?user?(based?on?its?containing?activitybeing?resumed).
As?a?fragment?is?no?longer?being?used,?it?goes?through?a?reverse?series?of?callbacks:
onPause()fragment?is?no?longer?interacting?with?the?user?either?because?its?activity?is?beingpaused?or?a?fragment?operation?is?modifying?it?in?the?activity.
onStop()fragment?is?no?longer?visible?to?the?user?either?because?its?activity?is?being?stoppedor?a?fragment?operation?is?modifying?it?in?the?activity.
onDestroyView()allows?the?fragment?to?clean?up?resources?associated?with?its?View.
onDestroy()called?to?do?final?cleanup?of?the?fragment's?state.
onDetach()called?immediately?prior?to?the?fragment?no?longer?being?associated?with?its?activity.
Back?Stack,以后再說。