方法調用小筆記

Activity

setResult(int resultCode, Intent data):如果Activity B調用了該方法,那麼Activity B在退出的時候將會把data傳給啓動該Activity的Activity A,A中的onActivityResult中的第三個參數負責接收。但是該方法在finish()中調用的時候,不能在super.finish()後面調用,否則無效。
onActivityResult(requestCode, resultCode, Intent): 使用startActivityForResult()啓動其他Activity的時候,當其他Activity調用setResult的時候回調該方法。

Fragment

onHiddenChanged(boolean hidden):當fragment的隱藏狀態發生改變的時候調用該方法。第一次打開Fragment的時候不會調用該方法
onActivityResult(requestCode, resultCode, Intent):
     與第三方Activity交互。與第三方交互,仍要採用Android的標準startActivityForResult()和onActivityResult()這二個方法來進行。
   但對於Fragment有些事情需要注意,Fragment也有這二個方法,但是爲了能正確的讓Fragment收到onActivityResult(),需要:
                                   宿主Activity要實現一個空的onActivityResult(),裏面調用super.onActivityResult();
                                   調用Fragment#startActivityForResult()啓動第三方Activity而不是用Activity的 當然,
                                   也可以直接使用Activity的startActivityForResult(),那樣的話,就只能在宿主Activity裏處理返回的結果了。
(1)fragmentManager並不是全局唯一的,而是每個activity都有一個自己的FragmentManager。
(2)當第一次進入Activity並打開fragment A的時候:onCreate -> onCreateView -> onActivityCreated -> onStart -> onResume: 
(3) 此時切換到其他fragment,fragment A的生命週期並沒有發生變化。
(4) 此時從當前Activity跳到其他Activity,fragment A的生命週期:onPause -> onStop
(5) 再回到當前的Activity上,但是並沒有回到當前的fragment A上,fragment A的生命週期:onStart -> onResume
(6) 鎖屏:onPause -> onStop    解屏:onStart -> onResume
(7)  

View

onFinishInflate():從XML加載組建後回調。
onSizeChanged():組件大小改變時回調。
onMeasure():回調該方法來進行測量。
onLayout():回調該方法來確定顯示的位置。
onTouchEvent():監聽到觸摸事件時回調。
發佈了32 篇原創文章 · 獲贊 7 · 訪問量 4913
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章