精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

深度解析Android Activity初探

移動開發(fā) Android
Activity是一個應用中的組件,它為用戶提供一個可視的界面,方便用戶操作,比如說拔打電話、照相、發(fā)郵件或者是瀏覽地圖等。每個activity會提供一個可視的窗口,一般情況下這個窗口會覆蓋整個屏幕,但在某此情況下也會出現(xiàn)一些比屏幕小的窗口飄浮在另外一相窗口上面。類比Windows當中的概念,Activity相應于一個Dialog(MFC)或者是Form(C#),它為用戶提供一個可視的界面。

Activity概述 

 一個應用當中通常有若干個關系松散的activities組成。通常情況下,一個應該中有一個activity是主activity,它會在應用程序加載時展現(xiàn)出來,之后每個activity都有機會啟動其他activity,從而產(chǎn)生不同的動作。每當一個新的activity啟動的時候,它的前一任就會停下來,這時系統(tǒng)將前任放在一個棧(后臺棧)中。這個后臺棧遵循先進后出原則,所以當用戶對當前activity完成操作并按后退鍵時,原來棧中的activity就會從棧中彈出,恢復執(zhí)行。(我們會在任務和后臺棧中詳細討論后臺棧)

新activity啟動,舊activity停止,這些操作會通過調(diào)用activity的生命周期回調(diào)函數(shù)來進行通知。對于activity來說,它可能會收到很多回調(diào),這些回調(diào)會在系統(tǒng)創(chuàng)建、停止、恢復或者銷毀一個activity時調(diào)用,這樣,activity就有機會感知變化進行在相應的回調(diào)中做出正確的處理。例如,當activity停止時,它應該釋放掉所有的大型對象,比如說網(wǎng)絡連接或數(shù)據(jù)庫連接。當activity恢復執(zhí)行時,可以重新獲取需要的資源并從中斷處重新運行。這些狀態(tài)的變化就是一個activity的生命周期。

創(chuàng)建一個Activity

創(chuàng)建一個Activity,必須要繼承Activity或者是繼承它相應的子類。在我們的子類當中,還需要實際一系列與生命周期轉化密切相關的接口函數(shù),比如說創(chuàng)建、停止、恢復或銷毀等回調(diào)接口。最重要的兩個回調(diào)函數(shù)是:

onCreate()

必須要實現(xiàn)的方法。當我們的Activity創(chuàng)建的時候,系統(tǒng)會調(diào)用此方法。在我們實現(xiàn)當中,需要初始化activity當中重要的組件。需要強調(diào)的是,在這個方法里,需要調(diào)用setContentView()來為activity的用戶界面調(diào)用布局。

onPause()

當用戶離開activity的時候,系統(tǒng)會調(diào)用這個函數(shù)。用戶可能不再會回來調(diào)用此activity,因此需要在本方法中把需要永久存儲的數(shù)據(jù)進行提交。

除了這兩個方法之外,在activity整個生命周期中還有很多回調(diào)方法需要關注。在后面我們會討論其他回調(diào)方法的作用。

創(chuàng)建一個用戶界面

Activity的用戶界面是由View來控制的。每個view控制著一片矩形區(qū)域并會對用戶的操作進行反饋。例如,一個view可能是一個按鈕,當用戶按下時,它會觸發(fā)一個事件。

Android系統(tǒng)提供了不少內(nèi)置的view,我們可以用它們來設計我們的布局。"Wedgets"是一類可以顯示的views,比如說button,textfiled,checkbox或者image。"Layouts"是從ViewGroup繼承出來的類,它可以提供一種固定的布局模式,比如說linear layout,grid layout,或者relative layout。我們當然還可以繼承View和ViewGroup來實現(xiàn)自己的控件和布局。

使用views最常見的方式是在資源文件中的XML中定義它。這種方式可以使設計和行為的源代碼分開。我們可以通過調(diào)用setContentView()來為Activity設置布局。不過,我們也可以在代碼中添加Views,首先往ViewGroup中插入相應的Views,再將ViewGroup的根元素傳遞給setContentView()即可。

在manifest中聲明activity

必須在manifest文件中聲明activity,不然系統(tǒng)可以無法訪問我們的activity。步驟是,打開manifest文件,為<application>元素添加一個叫<activity>的子元素。

java代碼:

  1. <manifest ... >   
  2. <application ... >   
  3. <activity android:name=".ExampleActivity" />   
  4. </application ... >   
  5. </manifest > 

這里還可以定義其他一些屬性,比如說定義標簽,圖標或者是UI的樣式等。使用intent filters      一個Activity可以具有多個intent filters(具體方式是在配置文件中聲明<intent-filter>),這樣可以方便其他activity訪問。可以理解成一個能力描述符,用來標識自己有哪些處理能力,當其他activity需要處理相應請求時,可以找到這個activity。

當使用Android SDK工具創(chuàng)建一個新的應用時,工具會自動幫我們創(chuàng)建一個filter,它的樣式如下:

java代碼:

  1. <activity android:name=".ExampleActivity" android:icon="@drawable/app_icon">   
  2. <intent-filter>   
  3. <action android:name="android.intent.action.MAIN" />   
  4. <category android:name="android.intent.category.LAUNCHER" />   
  5. </intent-filter> 
  6. </activity> 

<action>元素說明這是應用程序的"main"入口。<category>元素表示該activity會被記錄在系統(tǒng)的啟動器當中(允許用戶啟動這個activity)。如果我們不想讓自己的應用被其他應用訪問的話,就無需再多聲明fileters了。在一個應用當中只有一個activity的filter可以有main action和launcher category。對于沒有聲明filters的activities,可以通過在intent中明確指出要調(diào)用的activity的類來啟動它。      

如果我們想讓我們的activity接收其他activity的訪問并返回給對方結果的話,我們必須額外地再添加filters。對于我們想要回復的filters,我們必須在<intnent-filter>下面添加<action>元素,也可以選擇性地包含<category>元素和<data>元素。      

欲知更多關于intents的情況,啟動Activity 可以通過調(diào)用startActivity()來啟動另外一個Activity,只需要傳遞相應的Intent參數(shù)描述被啟動項即可。Intent可以描述需要啟動的Activity,也可以描述啟動時需要的動作,還可以帶有少量的數(shù)據(jù)。當工作在自己的應用當中時,我們經(jīng)常需要啟動某個activity。這時,我們可以在intent當中指定要啟動的activity的類名。例如,我們想啟動一個類名為SignInActivity的activity,會使用如下代碼:

java代碼:

  1. Intent intent = new Intent(this, SignInActivity.class);  
  2. startActivity(intent); 

如果我們的應用還想做一些額外動作,比如說發(fā)送郵件、發(fā)送短信等。但可能我們的應用本身不具備這樣的功能,這時我們就要請求系統(tǒng)當中有這種能力的應用來幫我們。做這件事情比較簡單,我們只需要創(chuàng)建一個intent,設置我們想要執(zhí)行的動作,設置需要的數(shù)據(jù),然后發(fā)送出去即可。這時,如果系統(tǒng)當中有多個應用可以提供這些功能,系統(tǒng)會提示用戶去選擇一個應用。具體代碼如下:

java代碼:

  1. Intent intent = new Intent(Intent.ACTION_SEND);  
  2. intent.putExtra(Intent.EXTRA_EMAIL, recipientArray);  
  3. startActivity(intent); 

為EXTRA_EMAIL添加的數(shù)據(jù)是一個字符串數(shù)組,其中包含郵件列表。當郵件應用回應這個intent時,它會讀取數(shù)組中的地址,然后設置郵件格式,發(fā)送郵件。以需要返回結果的方式啟動Activity有時,我們可能需要從我們啟動的activity當中獲取結果。這時,我們在啟動activity時就要調(diào)用startActivityForResult()方法。然后,我們在哪接收返回的數(shù)據(jù)呢?按照android的習慣,此時我們需要實現(xiàn)一個回調(diào)接口onActivityResult()。當我們啟動的activity完成時,它會以intent的形式在onActivityResult()中返回。     

例如,我們需要用戶去選擇一個聯(lián)系人,然后再對這些聯(lián)系人做一些操作。下面的代碼演示了這個過程:

java代碼:

  1. private void pickContact(){   
  2. Intent intent = new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI);   
  3. startActivityForResult(intent, PICK_CONTACT_REQUEST);  
  4. }  
  5. @Override  
  6. protected void onActivityResult(int requestCode, int resultCode, Intent data) {   
  7. if (resultCode == Activity.RESULT_OK && requestCode == PICK_CONTACT_REQUEST) {   
  8. Cursor cursor = getContentResolver().query(data.getData(), new String[] {Contacts.DISPLAY_NAME}, null, null, null);   
  9. if (cursor.moveToFirst()) {   
  10. int columnIndex = cursor.getColumnIndex(Contacts.DISPLAY_NAME);   
  11. String name = cursor.getString(columnIndex);   
  12. }  
  13. }  

【編輯推薦】

Activity頁面切換的效果

Android四種Activity的加載模式

Android開發(fā)中插入新的Activity

Android應用——Activity傳參數(shù)與跳轉

Android Activity和Intent機制學習筆記

責任編輯:zhaolei 來源: 網(wǎng)絡轉載
相關推薦

2010-02-06 10:14:36

Android Act

2021-10-12 11:07:33

動畫深度Android

2011-05-27 17:28:01

Android

2022-04-27 08:37:54

系統(tǒng)Linux

2010-07-13 09:08:27

Widget開發(fā)

2012-07-09 10:22:28

Mono for An

2011-06-16 10:25:29

AndroidAIR

2025-10-10 08:47:09

2016-03-24 14:02:05

ActivityAndroid啟動

2024-01-11 12:14:31

Async線程池任務

2011-04-15 13:24:27

Android 3.0Android蜂巢

2014-10-15 09:35:26

Android Wea

2011-05-26 16:28:08

Android jQuery

2023-10-24 19:37:34

協(xié)程Java

2011-09-07 10:58:07

Android wid

2013-01-08 13:33:07

Android開發(fā)Activity入門指南

2015-10-20 15:54:16

android源碼滑動關閉

2012-02-17 17:07:30

Android安全Activity劫持

2023-10-10 11:02:00

LSM Tree數(shù)據(jù)庫

2023-03-27 08:12:40

源碼場景案例
點贊
收藏

51CTO技術棧公眾號

午夜国产一区二区三区| 5g国产欧美日韩视频| 久久久久亚洲av无码专区桃色| 白浆视频在线观看| 26uuu另类欧美| 精品中文字幕在线| 美女网站视频在线观看| 国产精品一二三产区| 最近日韩免费视频| 另类ts人妖一区二区三区| 日本福利一区二区| 日本成人在线不卡| 国产一区二区影视| 粉嫩嫩av羞羞动漫久久久| 欧洲亚洲免费视频| 亚洲色婷婷一区二区三区| 国产精品羞羞答答在线观看| 欧美一区二区美女| 久久九九国产视频| 大香伊人中文字幕精品| 国产精品美女www爽爽爽| 国产伦理一区二区三区| 国产精品视频无码| 视频一区免费在线观看| 欧美精品激情blacked18| 久久午夜精品视频| 妖精视频一区二区三区| 欧美xingq一区二区| 日本肉体xxxx裸体xxx免费| sm久久捆绑调教精品一区| 成人欧美一区二区三区| 日本午夜一区二区三区| 日本免费网站在线观看| 国产精品影视在线观看| 国产精品爽黄69| 欧美一级淫片免费视频黄| 国内精品久久久久久久影视蜜臀| 日韩在线视频中文字幕| 欧美多人猛交狂配| 日韩啪啪网站| 亚洲成年人影院在线| 男男受被啪到高潮自述| 性欧美video另类hd尤物| 在线影院国内精品| 妞干网在线免费视频| а√天堂8资源在线| 亚洲一区二区四区蜜桃| 国产又粗又大又爽的视频| 日本在线免费看| 国产精品蜜臀av| 亚洲欧美精品| 999国产在线视频| 久久久久久综合| 欧美日韩一区在线播放 | 六月天综合网| 欧美一二三视频| 免费看日批视频| 巨乳诱惑日韩免费av| 国产精品99导航| 精品国产www| 欧美96一区二区免费视频| 国产精品久久久久久一区二区| 好吊色在线视频| 日欧美一区二区| 国产精品久久久久久久久久久久 | 亚洲日韩中文字幕| 人人妻人人澡人人爽| 日韩中文在线电影| 久久综合网hezyo| 久久久精品99| 国产农村妇女精品一二区| 欧美在线激情网| 天天干天天插天天射| 麻豆精品视频在线观看免费 | 日本天堂免费a| 欧美草逼视频| 都市激情亚洲色图| 久久婷婷综合色| 精品国产乱码久久久久久樱花| 日韩精品一区二区三区中文不卡| 日韩成人av影院| 九九久久精品| 久久精品久久久久久国产 免费| 在线免费日韩av| 亚洲欧美久久| 成人在线免费观看视视频| 亚洲av无码片一区二区三区 | 九九九视频在线观看| 天堂美国久久| 性欧美激情精品| 亚洲系列第一页| 国产电影一区二区三区| 久久精品人人做人人爽电影| 在线观看完整版免费| 亚洲精品成人悠悠色影视| 日韩小视频在线播放| 国产一区二区三区四区五区3d| 日韩精品一区二区在线观看| 日韩精品电影一区二区| 一区二区中文| 2020欧美日韩在线视频| 91丨九色丨蝌蚪丨对白| 91在线观看地址| 亚洲一区二区在线看| caoporn视频在线| 欧美日韩欧美一区二区| 亚洲国产精品成人综合久久久| 青青草国产免费一区二区下载| 欧美高清无遮挡| 成人黄色三级视频| 成人国产视频在线观看| 中文字幕日韩精品一区二区| 在线男人天堂| 日韩视频免费观看高清完整版在线观看 | 丁香婷婷综合五月| 亚洲色图自拍| 韩国久久久久久| 精品成人一区二区| 欧美老熟妇一区二区三区| 日韩电影免费一区| 久久久久久99| 97人澡人人添人人爽欧美| 91精品欧美综合在线观看最新| 99久久久无码国产精品性 | 欧美激情成人网| 精品深夜福利视频| 欧美精品xxx| 999国产精品视频免费| 国产精品亲子乱子伦xxxx裸| 黄色a级片免费| 婷婷精品在线观看| 国色天香2019中文字幕在线观看| 99在线观看精品视频| 中文字幕免费一区| 538在线视频观看| 国产成人av| 国产ts一区二区| 日本韩国精品一区二区| 精品国产乱码久久久久久虫虫漫画 | 国产校园另类小说区| 国产aaa一级片| 欧美jizz19性欧美| 97在线视频精品| 日韩中文字幕免费观看| 亚洲va韩国va欧美va| 国产人成视频在线观看| 精品不卡视频| 精品久久久久久一区| 久草在线资源站手机版| 亚洲精品久久在线| 久草视频在线观| 2020国产精品| 九九九在线观看视频| 欧美自拍偷拍| 成人午夜一级二级三级| 色呦呦网站在线观看| 精品蜜桃在线看| 日韩黄色三级视频| 久久综合色综合88| 99热手机在线| 久久久久久美女精品| 91亚色免费| 欧美在线极品| 在线播放日韩av| 99热这里只有精| 亚洲二区在线观看| 中文字幕国产综合| 看国产成人h片视频| 97av中文字幕| 在线日韩网站| 成人春色激情网| 免费网站在线观看人| 亚洲精品二三区| 无码人妻久久一区二区三区不卡| 国产精品久久久久影院亚瑟| 亚洲av无码久久精品色欲| 99精品视频免费观看视频| 日韩国产一区久久| 国语精品视频| 欧洲午夜精品久久久| 老司机av在线免费看| 亚洲国产成人精品电影| 波多野结衣在线电影| 亚洲视频免费在线观看| 岛国精品资源网站| 免费一级片91| 欧美亚洲黄色片| 精品国产一区二区三区久久久樱花 | 国产91ⅴ在线精品免费观看| 99中文字幕一区| 精品国产乱码久久久久久久| 国产乱码77777777| 一区二区三区不卡视频 | 亚洲综合色视频| 欧美多人猛交狂配| 国产成人精品免费网站| 色一情一乱一伦一区二区三区日本| 午夜精品久久久久久久四虎美女版| 国产一区自拍视频| 精品国产亚洲一区二区三区在线 | 日韩在线视频免费观看| 欧洲精品久久一区二区| 欧美色图片你懂的| 奇米影视第四色777| 中文字幕永久在线不卡| 添女人荫蒂视频| 国产高清在线精品| 亚洲第一狼人区| 性色一区二区| 日本人体一区二区| 91精品综合| 日韩久久在线| 天堂av一区二区三区在线播放| 2022国产精品| 欧美男男gaygay1069| 日本久久久久亚洲中字幕| 污视频网站在线免费| 神马国产精品影院av| 美国成人毛片| 国产视频精品va久久久久久| 精品人妻久久久久一区二区三区 | 四虎精品一区二区| 国内外成人在线| 狠狠躁狠狠躁视频专区| 免费亚洲网站| 国产一区二区在线视频播放| 国语对白精品一区二区| 艳母动漫在线免费观看| 日韩免费高清| 日韩一区二区三区资源| 亚洲春色h网| 久久久精品国产一区二区三区| 亚洲一区二区电影| 99国产超薄肉色丝袜交足的后果| 91精品一区| 国产中文字幕亚洲| 成人黄色图片网站| 国产精品久久久久久久久久久久久 | 91福利小视频| 午夜精品一区二| 色狠狠综合天天综合综合| jizz国产在线观看| 日韩欧美精品免费在线| 国产精品国产三级国产专区52| 五月婷婷欧美视频| 日韩人妻无码一区二区三区99 | 国产亚洲福利社区一区| 手机免费看av| 国产精品视频一二三| 国产午夜精品福利视频| 国产精品视频线看| 成人免费视频国产免费观看| 亚洲欧美国产77777| 免费看一级一片| 亚洲电影在线免费观看| 日韩欧美亚洲视频| 在线亚洲高清视频| 一级α片免费看刺激高潮视频| 欧美日韩高清一区二区不卡| 做爰视频毛片视频| 欧美一区二区观看视频| 亚洲毛片在线播放| 亚洲精品视频在线播放| 91社区在线高清| 久久久av电影| 极品av在线| 国产精品激情av在线播放| 日韩黄色三级| 国产传媒一区二区| 综合亚洲色图| 正在播放精油久久| 亚洲精品影视| 超碰在线97免费| 国产一区二区三区在线观看精品| 欧美久久久久久久久久久| 久久亚洲一区二区三区四区| 美国黄色特级片| 亚洲精品免费在线观看| 51国产偷自视频区视频| 欧美精品在线一区二区三区| 超碰免费在线97| 亚洲性69xxxbbb| 天堂va在线| 国产成人精品午夜| 激情视频亚洲| 日本视频一区在线观看| 国产精品99一区二区| 人妻无码视频一区二区三区 | 91最新在线免费观看| 久久97久久97精品免视看秋霞| 日韩在线观看电影完整版高清免费| 91精品国产福利在线观看麻豆| 欧美午夜小视频| 美美哒免费高清在线观看视频一区二区 | 夜夜爽妓女8888视频免费观看| 9191精品国产综合久久久久久| 午夜激情在线视频| 精品国产拍在线观看| 欧美男女交配| 成人蜜桃视频| 色97色成人| 能在线观看的av| 国产成人精品亚洲午夜麻豆| 国产精品成人无码免费| 午夜在线电影亚洲一区| 国产又粗又猛视频| 亚洲欧美国产精品va在线观看| av大片在线| 国产日韩欧美日韩| 国产精品欧美日韩一区| 国精产品一区一区三区视频| 国产剧情在线观看一区二区| 中文字幕在线观看免费高清| 精品国产999| 亚洲第一页视频| 另类天堂视频在线观看| 欧美日韩五区| 麻豆成人小视频| 99精品国产福利在线观看免费| 亚洲制服中文字幕| 国产精品久久久久久久久果冻传媒 | 国产精品一二| 中文字幕乱码在线| 亚洲一区二区综合| 国内老熟妇对白xxxxhd| 日韩最新中文字幕电影免费看| 欧美极品免费| 日韩国产欧美精品| 老司机午夜精品视频| 国产呦小j女精品视频| 午夜视频在线观看一区二区| www.久久色| 欧美另类极品videosbestfree| 国产成人久久精品一区二区三区| 亚洲电影免费| 麻豆精品一区二区av白丝在线| 天堂资源在线视频| 在线观看成人小视频| 国产黄色免费在线观看| 国产精品久久久久久久久久东京| 蜜桃一区二区三区| 麻豆传传媒久久久爱| 久久久久久综合| 中文字幕乱码人妻二区三区| 亚洲偷欧美偷国内偷| 日本欧美日韩| 亚洲欧美精品| 国产美女一区二区| 激情五月少妇a| 精品国产91久久久久久久妲己 | 成人亲热视频网站| 99精品网站| 国产精品久久久久野外| 一区二区三区日韩欧美精品| 亚洲美女性生活| 91精品国产高清自在线| 自拍自偷一区二区三区| 日本888xxxx| 亚洲人123区| 日本激情一区二区三区| 国产mv免费观看入口亚洲| 日韩极品一区| 俄罗斯女人裸体性做爰| 亚洲高清在线视频| 久久天堂电影| 成人国产精品久久久久久亚洲| 欧美精品播放| av无码一区二区三区| 欧美主播一区二区三区美女| 欧美96在线| 国产精品久久久对白| 翔田千里一区二区| 制服丨自拍丨欧美丨动漫丨| 日韩一区二区麻豆国产| 一区二区精品伦理...| 亚洲精品日韩在线观看| 国产精品一区二区在线播放| 国产精品xxxx喷水欧美| 伊人精品在线观看| 97精品久久| 日本新janpanese乱熟| 亚洲欧美偷拍三级| 手机福利小视频在线播放| 国产欧美日韩免费| 亚洲激情女人| 国产白丝一区二区三区 | 中文人妻一区二区三区| 欧美日韩一区二区三区在线看 | 欧美暴力喷水在线| 最新中文字幕视频| 欧美一级电影网站| 日韩pacopacomama| bt天堂新版中文在线地址| 久久精品欧美日韩| 亚洲爱爱综合网| 国产精品免费看久久久香蕉| 亚洲一级特黄| 永久免费看片直接| 亚洲欧美在线x视频| 欧美三级一区|