国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > OS > 安卓 > 正文

Android開發之Activity詳解

2024-09-11 17:15:20
字體:
來源:轉載
供稿:網友

Activity

  一個Activity是一個應用程序組件,提供一個屏幕,用戶可以用來交互為了完成某項任務,例如撥號、拍照、發送email、看地圖。每一個activity被給予一個窗口,在上面可以繪制用戶接口。窗口通常充滿屏幕,但也可以小于屏幕而浮于其它窗口之上。

  一個應用程序通常由多個activities組成,他們通常是松耦合關系。通常,一個應用程序中的activity被指定為"main"activity,當第一次啟動應用程序的時候呈現給用戶的那個activity。每一個activity然后可以啟動另一個activity為了完成不同的動作。每一次一個activity啟動,前一個activity就停止了,但是系統保留activity在一個棧上(“back stack”)。當一個新activity啟動,它被推送到棧頂,取得用戶焦點。Back Stack符合簡單“后進先出”原則,所以,當用戶完成當前activity然后點擊back按鈕,它被彈出棧(并且被摧毀),然后之前的activity恢復。

  當一個activity因新的activity啟動而停止,它被通知這種狀態轉變通過activity的生命周期回調函數。有許多回調函數一個activity可能會收到,源于它自己的狀態變化-無論系統創建它、停止它、恢復它、摧毀它-并且每個回調提供你完成適合這個狀態的指定工作的機會。例如,當停止的時候,你的activity應該釋放任何大的對象,例如網絡數據庫連接。當activity恢復,你可以重新獲得必要的資源和恢復被中斷的動作。這些狀態轉換都是activity的生命周期的部分。

Creating an Activity

  創建一個activity,你必須創建一個Activity的子類(或者一個Activity的子類的子類)。在你的子類中,你需要實現系統回調的回調方法,當activity在它的生命周期的多種狀態中轉換的時候,例如當activity被創建、停止、恢復或摧毀。兩個最重要的回調方法是:
onCreate()
    你必須實現這個方法。系統調用它當創建你的activity的時候。在你的實現中,你應該初始化你的activity的基本的組件。更重要的是,這里就是你必須調用setContentView()來定義activity用戶接口而已的地方。
onPause()
    系統調用這個方法當用戶離開你的activity(雖然不總是意味著activity被摧毀)。這通常是你應該提交任何變化,那此將會超越user session而存在的(因為用戶可能不再回來)。

  有若干其它生命周期回調函數你應該使用為了提供一個流暢的用戶體驗,并表操作異常中斷會引起你的activity被中斷甚至被摧毀。

1、Implementing a user interface

  一個activity的用戶接口被一個層次化的視圖提供--繼承于View類的對象。每個View控制activity窗口中的一個特定矩形區域并且能響應用戶交互。例如,一個view可能是個button,初始化動作當用戶觸摸它的時候。

  Android提供大量預定義的view,你可以使用來設計和組件你的布局。“Widgets”是一種給屏幕提供可視化(并且交互)元素的view,例如按鈕、文件域、復選框或者僅僅是圖像。“Layouts”是繼承于ViewGroup的View,提供特殊的布局模型為它的子view,例如線程布局、格子布局或相關性布局。你可以子類化View和ViewGroup類(或者存在的子類)來創建自己的widget和而已并且應用它們到你的activity布局中。

  最普通的方法是定義一個布局使用view加上XML布局文件保存在你的程序資源里。這樣,你可以單獨維護你的用戶接口設計,而與定義activity行為的代碼無關。你可以設置布局作為UI使用setContentView(),傳遞資源布局的資源ID。可是,你也可以創建新Views在你的activity代碼,并且創建一個view層次通過插入新Views到ViewGroup,然后使用那個布局通過傳遞到根ViewGroup給setContentView()。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南乐县| 玛纳斯县| 鹿邑县| 井冈山市| 宁南县| 和政县| 凌云县| 建湖县| 永善县| 平阴县| 本溪市| 包头市| 乐安县| 郴州市| 都昌县| 剑阁县| 汉寿县| 平原县| 榆树市| 宣威市| 昭觉县| 绍兴市| 武强县| 巫山县| 丹东市| 吉水县| 汉寿县| 信宜市| 湟中县| 张家川| 普陀区| 金乡县| 中宁县| 手游| 青神县| 鹤山市| 务川| 中西区| 江城| 柏乡县| 广饶县|