Android Activity类讲解(一)
--by CY[kotomifi@gmail.com]
1.protected void onCreate(Bundle savedInstanceState) { throw new RuntimeException("Stub!"); }
當(dāng)創(chuàng)建一個Activity時,系統(tǒng)會自動調(diào)用onCreate方法來完成創(chuàng)建工作.該創(chuàng)建工作包括布局,監(jiān)聽器的綁定等.
首先說一下Bundle 這個類,Bundle是一個鍵值對,跟Map類似,兩個Activity之間的通信可以用Bundle類來實現(xiàn).
Bundle savedInstanceState對象則是保存程序上一次關(guān)閉(凍結(jié))時的狀態(tài),也可以通過重寫onFreeze方法來保存凍結(jié)前的狀態(tài).當(dāng)程序啟動(Activity 重新初始化時),會再次調(diào)用onCreate方法,從savedInstanceState中獲取前一次的凍結(jié)狀態(tài),可以通過Bundle來將這一個Activity 中的內(nèi)容傳到下一個Activity 中.
當(dāng)一個Activity 結(jié)束前需要保存狀態(tài),就保存在savedInstanceState中,當(dāng)其它Activity創(chuàng)建時,就能從中獲得數(shù)據(jù).
?
2.protected void onSaveInstanceState(Bundle outState) { throw new RuntimeException("Stub!"); }
Android中的Activity通過onSaveInstanceState()方法保存Activity的狀態(tài),在onCreate或者onRestoreInstanceState方法中哦功能恢復(fù),如果是通過onRestart方法運行,則只會執(zhí)行onSaveInstanceState方法.
圖1-1是android Activity的生命周期.
圖1-1
?
3. protected void onRestoreInstanceState(Bundle savedInstanceState) { throw new RuntimeException("Stub!"); }
解釋見第2條
4.protected void onRestart() { throw new RuntimeException("Stub!"); }
解釋見第2條
5. protected void onStart() { throw new RuntimeException("Stub!"); }
下面來結(jié)合來說一下onCreate, onStart, onResume, onPause, onRestart, onStop, onDestroy方法.當(dāng)啟動一個Activity時,系統(tǒng)會依次調(diào)用onCreate, onStart, onResume方法.
從activity1啟動activity2時,會先調(diào)用activity1的onPause方法,然后再調(diào)用activity2的onCreate, onStart, OnResume方法,若要完全覆蓋activity1,則最后再調(diào)用activity1的onStop方法.
onCreate方法:
- Activity第一次創(chuàng)建時,被系統(tǒng)調(diào)用
- 作用是設(shè)置布局文件,綁定監(jiān)聽器
onStart方法:
- ?Activity可見時,會調(diào)用該方法
onResume方法:
- 用戶可以獲取當(dāng)前焦點時,會調(diào)用該方法
onPause方法:
- 當(dāng)新的Activity遮住當(dāng)前Activity時,該方法會保存當(dāng)前Activity中的數(shù)據(jù)
onRestart方法:
- 一個Activity沒有被銷毀時(調(diào)用onDestroy方法),再次使用該Activity時會調(diào)用onRestart方法
?onStop方法:
- 當(dāng)當(dāng)前Activity完全不可見時,系統(tǒng)會調(diào)用該方法
onDestroy方法:
- 銷毀一個Activity
轉(zhuǎn)載于:https://www.cnblogs.com/apping/p/3755934.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的Android Activity类讲解(一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 长风街不孕不育医院
- 下一篇: 听说丝路欢乐世界票价有优惠是真的吗?