Android 四大组件之——Acitivity(一)
一,什么是Activity
activity是Android組件中最基本也是最為常見用的四大組件之一。Android四大組件有Activity,Service服務,Content Provider內容提供,BroadcastReceiver廣播接收器。
Activity中所有操作都與用戶密切相關,是一個負責與用戶交互的組件。
二,Activity的生命周期
上圖是官方給出的Activity生命周期圖,其實這張圖就能完整描述了Activity的聲明周期,但初學者可能會不太理解。結合上圖來逐一分析。
Activity的生命周期方法有onCreate(), onStart(), onResume(), onPause(),?onStop(), onRstart(), onDestroy()。
onCreate() ? Activity的創建時會調用此方法
onStart() ? Activity在可見時調用此方法,此時是不能操作的,只有獲取焦點后才能進行交互
onResume() ?Activity獲取焦點,此時用戶可以進行交互操作
onPause() Activity失去焦點時調用此方法,比如在Activity中彈出對話框時,Activity失去焦點
onStop() ? ? Activity不可見時調用此方法,比如按下Home鍵回到桌面
onRstart() ? ? Activity從新可見時調用此方法,比如從桌面返回Activity
onDestroy() 退出Activity時調用此方法,比如按返回鍵退出當前Activity
Activity 生命周期方法的調用在不同場景調用有所不同
場景一, ?打開Activity,按返回鍵退出Activity
Activity 的生命周期方法調用的順序為: onCreate()——>onStart()——>onResume()——>onPause()——>onStop()——> onDestroy();
場景二,打開Activity,按下home鍵,然后重新進到界面
Activity 的生命周期方法調用的順序為 onCreate()——>onStart()——>onResume()——>onPause()——>onStop()——>?onRestart()——>onResume();
場景三,打開Activity,點擊Activity中的某個按鈕彈出對話框,然后返回到當前Activity
當前Activity 的生命周期方法調用的順序為 onCreate()——>onStart()——>onResume()——>onPause()——>onResume()
大概舉這幾個栗子。其他的類似分析即可
三,如何啟動Activity
android四大組件都可以通過Intent來啟動,其中Activity的啟動有兩種:startActivity(intent); startActivityForResult(intent,requestCode);
Intent intent=new Intent(this,TargetActivity.class); intent.put("key","value"); startActivity(intent);其中第二行代碼表示需要傳遞的數據鍵值對,那么當跳轉到TargetActivity時,以此為栗可以通過如下代碼獲取傳遞的數據 Intent intent=getIntent(); String val=intent.getStringExtras("key");其中val就是獲取到的值,當然在實際開發中intent 還可傳遞不同類型的數據,具體傳遞什么值具體分析,然后根據相應類型獲取對應的值即可。Activity的第二中啟動為startActivityForResult(intent,requestCode); 當我們需要從目標Activity返回時希望獲取某些數據時可使用此方法
Intent mIntent = new Intent(); mIntent.putExtra("key", "hello"); // 設置結果,并進行傳送 this.setResult(resultCode, mIntent);
此時,Activity的基礎介紹完了,在下一篇博客中將會進一步介紹Activity,敬請關注
總結
以上是生活随笔為你收集整理的Android 四大组件之——Acitivity(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: com.facebook.imagepi
- 下一篇: Android 四大组件之——Aciti