日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android基本程序单元Activity总结

發布時間:2024/4/14 Android 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android基本程序单元Activity总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、什么是Activity?

在Android當中,Activity提供可視化的用戶界面,一個Android應用通常由多個Activity組成。多個Activity組成了Activity棧(Stack),當前活動的Activity處于棧頂。Activity有自己的生命周期,由Android系統來控制。在Activity中包含一個window對象,在window當中通常包含一個布局容器對象(如LinearLayout布局對象),在布局對象中包含了我們之前講解的各種UI組件。和HTML DOM一樣,Android的Activity也是一個具有嚴格層次結構的,類似于樹形的對象結構。

2、回調
C、C++、Java Script中的回調是通過指針來實現的;但是Java中不允許直接操作指針,回調是通過接口來實現的。接口(系統框架)是系統提供的,接口的實現使用戶實現的。系統通過在不同的狀態“回調”我們的實現類來達到接口和實現的分類。(Activity接口)

3、如何創建自己的Activity?(三步走)

MyActivity.java → activity_my .xml → 在AndroidManifest.xml中的相應注冊 或者 new→Android Activity

第一步:在相應的布局文件中定義顯示布局;
第二步:定義Activity類是,繼承Activity,并求重寫onCreate()方法
- 找到對應的xml布局文件:setContentView(R.layout.main)
- 通過findViewById找到相應控件對象:btn = (Button)this.findViewById(R.id.button01);
第三部:在AndroidManifest.xml中注冊。

補充:
1 )、每一個Activity 都必須繼承自 Activity類;
2 )、必須實現Activity類的 onCreate()方法(應用程序在初始化 Activity時,調用的其中的一個回調方法,在該方法中定義如何展示自己創建的 Activity,即Activity 里面有什么內容);
3 )、每一個Activity 的信息都必須配置到項目中一個核心的配置文件 (AndroidManifest.xml)中的Application 結點下;當我們把自己創建的 Activity注冊到AndroidManifest.xml 配置文件中時,系統就可以通過該配置文件找到相應的 Activity;配置項如下:

1 )------------------------------------------- startActivity(new Intent(MainActivity.this,MyActivity.class)); //從當前MainActivity跳轉到MyActivity核心代碼:public void onClick(View view){Intent intent = new Intent();intent.setClass(MainActivity. this , MyActivity. class);// Intent intent = new Intent(MainActivity. this , MyActivity. class);MainActivity. this.startActivity(intent);} 2 )----------------------------------------------- startActivity(new Intent(Intent.ACTION_VIEW,Uri.parse("http://www.baidu.com"))); //從當前MainActivity跳轉到網址http://www.baidu.com

實例:(點擊button按鈕,從SecondActivity跳轉到FirstActivity)

6、Activity之間傳遞數據
(后面的文章會給出一個關于Activity之間傳遞數據的具體應用實例:在注冊一個系統會員的時候經常需要多個步驟,我們經常使用“上一步”,“下一步”來完成,那么當用戶在返回“上一步”時應如何保存信息呢?

1 )、傳遞簡單數據可以只用Intent;
2)、傳遞數據包時就要用到Bundle和Intent了; 使用對象Bundle,將要傳遞的信息封裝到對象Bundle中,并通過Intent對象傳遞到另一個Intent中。
3 )、傳遞自定義值對象:如傳遞一個自定義的User,要用到序列化的類Serializable或Parcelable。

用法:(核心代碼)//MainActivity中Bundle bundle= new Bundle();bundle.putString( "keyname", keyvalue);Intent intent = new Intent(MainActivity.this,MyActivity .class );intent. putExtra(bundle);//MyActivity中Intent intent=getIntent();Bundle bundle=intent.getExtras();String keyvalue=bundle.getString( "keyname");另一種方法://MainActivity中Bundle bundle= new Bundle();bundle.putString( "keyname1", keyvalue1);bundle.putString( "keyname2", keyvalue2);bundle.putString( "keyname3", keyvalue3);Intent intent = new Intent(MainActivity.this,MyActivity .class );intent. putExtra("key",bundle);//MyActivity中Intent intent=getIntent();Bundle bundle=intent.getBundleExtras("key");String keyvalue1=bundle.getString( "keyname1");String keyvalue2=bundle.getString( "keyname2");String keyvalue3=bundle.getString( "keyname3");

實例:(在MainActivity中要求輸入用戶名稱,通過用戶名稱查詢用戶聯系方式信息,并在ResultActivity中顯示。)
MainActivity.java

ResultActivity.java

7、Activity的生命周期

1).啟動Activity:系統會先調用onCreate方法,然后調用onStart方法,最后調用onResume,Activity進入運行狀態。
2).當前Activity被其他Activity覆蓋其上或被鎖屏:系統會調用onPause方法,暫停當前Activity的執行。(onPause方法用來持久保存數據)
3).當前Activity由被覆蓋狀態回到前臺或解鎖屏:系統會調用onResume方法,再次進入運行狀態。
4).當前Activity轉到新的Activity界面或按Home鍵回到主屏,自身退居后臺:系統會先調用onPause方法,然后調用onStop方法,進入停滯狀態。
5).用戶后退回到此Activity:系統會先調用onRestart方法,然后調用onStart方法,最后調用onResume方法,再次進入運行狀態。
6).當前Activity處于被覆蓋狀態或者后臺不可見狀態,即第2步和第4步,系統內存不足,殺死當前Activity,而后用戶退回當前Activity:再次調用onCreate方法、onStart方法、onResume方法,進入運行狀態。
7).用戶退出當前Activity:系統先調用onPause方法,然后調用onStop方法,最后調用onDestory方法,結束當前Activity。
我們可以自己定義當處于什么狀態的時候做什么事件。

在Activity跳轉過程中發生的生命周期變化(點擊A中的按鈕跳到B):
1、B為一個Activity時
A onCreate→A onStart→A onResume→(點擊按鈕進入B界面)→A onPause→B onCreate→B onStart→B onResume→A onStop;
2、B為一個對話框(dialog)時
A onCreate→A onStart→A onResume→(點擊按鈕進入B對話框)→A onPause→B onCreate→B onStart→B onResume→(點擊空白處回到A界面)→B onPause→A onResume→B onStop→B onDestory;

總結

以上是生活随笔為你收集整理的Android基本程序单元Activity总结的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。