Android Activity的理解
Android Activity的理解
Activity 生命周期的四個(gè)狀態(tài)
Activity的生命周期分為運(yùn)行、暫停、停止、銷毀四個(gè)狀態(tài)。
tips:焦點(diǎn)類似于windows里面的光標(biāo),只有能獲取焦點(diǎn)才可以進(jìn)行點(diǎn)擊、滑動、輸入等類似操作。
Activity 生命周期過程中執(zhí)行的方法
Activity在生命周期的過程中,會經(jīng)歷onCreate()、onStart()、onRestart()、onResume()、onPause()、onStop()、onDestroy()七個(gè)方法。在開發(fā)過程中,可重寫某些方法以達(dá)到自己的項(xiàng)目需求。
Activity的代碼演示生命周期變化
tips:創(chuàng)建項(xiàng)目時(shí)會自動繼承AppCompatActivity,其與Activity區(qū)別在于,前者在頁面左上方會有標(biāo)題。也可以手動把AppCompatActivity改成Activity。
public class MainActivity extends AppCompatActivity {private static final String TAG = "--MainActivity---甘---";@Overrideprotected void onCreate(Bundle savedInstanceState) {Log.i(TAG, "-----------onCreate-------------");super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}@Overrideprotected void onStart() {super.onStart();Log.i(TAG, "-----------onStart-------------");}@Overrideprotected void onRestart() {super.onRestart();Log.i(TAG, "-----------onRestart-------------");}@Overrideprotected void onResume() {super.onResume();Log.i(TAG, "-----------onResume-------------");}@Overrideprotected void onPause() {super.onPause();Log.i(TAG, "-----------onPause-------------");}@Overrideprotected void onStop() {super.onStop();Log.i(TAG, "-----------onStop-------------");}@Overrideprotected void onDestroy() {super.onDestroy();Log.i(TAG, "-----------onDestroy-------------");} }通過打Log的方式,能更加清晰動態(tài)的了解Activity的生命周期變化。
通過對點(diǎn)擊的控件設(shè)置監(jiān)聽事件,通過以下代碼切換Activity。
Intent intent = new Intent(view.getContext(), NextActivity.class); view.getContext().startActivity(intent);
點(diǎn)擊MainActivity的設(shè)置監(jiān)聽事件的控件跳轉(zhuǎn)至NextActivity,觀察到MainActivity與NextActivity的生命周期的變化為:MainActivity:onPause()->NextActivity:onCreate()->NextActivity:onStart()->NextActivity:onResume()->MainActivity:onStop()
總結(jié):Activity有生命周期會經(jīng)過四種狀態(tài)和回調(diào)7種方法。當(dāng)鎖屏、按home鍵時(shí),Activity保持停止?fàn)顟B(tài);當(dāng)按手機(jī)"back"(返回鍵)時(shí),Activity便被銷毀,生命周期結(jié)束。
總結(jié)
以上是生活随笔為你收集整理的Android Activity的理解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ajax路由器,注册ajax用户的步骤
- 下一篇: 对Fragment生命周期的理解以及其与