Android項(xiàng)目中如何使用Activity的生命周期?針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。
創(chuàng)新互聯(lián)建站專(zhuān)注于塔什庫(kù)爾干塔吉克企業(yè)網(wǎng)站建設(shè),自適應(yīng)網(wǎng)站建設(shè),商城網(wǎng)站制作。塔什庫(kù)爾干塔吉克網(wǎng)站建設(shè)公司,為塔什庫(kù)爾干塔吉克等地區(qū)提供建站服務(wù)。全流程按需設(shè)計(jì)網(wǎng)站,專(zhuān)業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)建站專(zhuān)業(yè)和態(tài)度為您提供的服務(wù)Android Activity的生命周期詳細(xì)介紹
生命周期描述的是一個(gè)類(lèi)從創(chuàng)建(new出來(lái))到死亡(垃圾回收)的過(guò)程中會(huì)執(zhí)行的方法。在這個(gè)過(guò)程中,會(huì)針對(duì)不同的生命階段調(diào)用不同的的方法。
Activity是Android中四大組件之一,是最常見(jiàn)的應(yīng)用組件,也是用的最多的組件,它能夠提供一個(gè)界面與用戶(hù)進(jìn)行交互。Activity從創(chuàng)建到銷(xiāo)毀有多種狀態(tài),從一種狀態(tài)到另一種狀態(tài)時(shí)會(huì)激發(fā)相應(yīng)的回調(diào)方法,這些回調(diào)方法包括:onCreate onDestory onStart onStop onResume onPause。這些方法都是兩兩對(duì)應(yīng)的,onCreate-->創(chuàng)建與onDestory-->銷(xiāo)毀;onStart-->可見(jiàn)與onStop-->不可見(jiàn);onResume-->可編輯(焦點(diǎn))和onPause-->未獲得焦點(diǎn)。最后還有一個(gè)方法是onRestart,這個(gè)方法在什么時(shí)候調(diào)用呢?當(dāng)Activity被onStop后,但是并沒(méi)有onDestory,即并沒(méi)有被銷(xiāo)毀時(shí),用戶(hù)重新回到當(dāng)前Activity時(shí),就調(diào)用onRestart方法,這里就不再是調(diào)用onCreate方法了。
public class MainActivity extends ActionBarActivity { private final static String TAG = "MainActivity"; @Override // Activity被創(chuàng)建時(shí)調(diào)用 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.e(TAG, "onCreate......."); } @Override // 該狀態(tài)用戶(hù)可見(jiàn),但是用戶(hù)還不能與之進(jìn)行交互 protected void onStart() { super.onStart(); Log.e(TAG, "onStart......."); } @Override // 該狀態(tài)是Activity獲得用戶(hù)焦點(diǎn),用戶(hù)可以與之進(jìn)行交互 protected void onResume() { super.onResume(); Log.e(TAG, "onResume......."); } @Override //與onResume對(duì)應(yīng),當(dāng)Activity失去焦點(diǎn)時(shí)調(diào)用 protected void onPause() { super.onPause(); Log.e(TAG, "onPause......."); } @Override //與onStart對(duì)應(yīng),當(dāng)Activity不可見(jiàn)時(shí)調(diào)用 protected void onStop() { super.onStop(); Log.e(TAG, "onStop......."); } @Override //與onCreate對(duì)應(yīng),當(dāng)Activity被銷(xiāo)毀時(shí)調(diào)用 protected void onDestroy() { super.onDestroy(); Log.e(TAG, "onDestroy......."); } @Override //Activity從后臺(tái)重新回到前臺(tái)調(diào)用 protected void onRestart() { super.onRestart(); Log.e(TAG, "onRestart......."); } }