Android應用程序開發(fā)技術 課件 第1-3章 Android概述、Android Studio使用入門、Activity和Application_第1頁
Android應用程序開發(fā)技術 課件 第1-3章 Android概述、Android Studio使用入門、Activity和Application_第2頁
Android應用程序開發(fā)技術 課件 第1-3章 Android概述、Android Studio使用入門、Activity和Application_第3頁
Android應用程序開發(fā)技術 課件 第1-3章 Android概述、Android Studio使用入門、Activity和Application_第4頁
Android應用程序開發(fā)技術 課件 第1-3章 Android概述、Android Studio使用入門、Activity和Application_第5頁
已閱讀5頁,還剩100頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第1章Android概述Android應用程序開發(fā)技術內容安排1.1Android簡介1.2Android特點1.3本章總結內容安排1.1Android簡介1.2Android特點1.3本章總結1.1.1Android釋義與應用Android一詞最早出現(xiàn)于法國作家利爾亞于1886年發(fā)表的科幻小說《未來夏娃》中,他將外表像人的機器起名為Android。2007年11月5日,Google公司正式發(fā)布Android操作系統(tǒng)。Android操作系統(tǒng)是一款基于Linux內核、中間件、應用程序框架和應用軟件組成的開源移動操作系統(tǒng),目前仍然由谷歌成立的開放手機聯(lián)盟持續(xù)領導與開發(fā)。2008年9月,Google公司正式發(fā)布了Android1.0系統(tǒng),從此,Google公司開啟了新的手機系統(tǒng)輝煌時代。2013年3月,Android加強了Google的相關應用服務,此時,Android系統(tǒng)不再是一款手機操作系統(tǒng),而是越來越廣泛應用于平板電腦、可穿戴設備、電視、數(shù)碼相機、智能汽車管理系統(tǒng)等移動設備及物聯(lián)網(wǎng)設備中。1.1.2Android版本發(fā)布由于涉及版權問題,Android系統(tǒng)在最開始發(fā)布時,系統(tǒng)命名將甜點作為系統(tǒng)版本代號,下表為Android發(fā)展過程中甜點命名與系統(tǒng)版本代號之間的對應關系。

甜點版本代號紙杯蛋糕(Cupcake)Android1.5甜甜圈(Donut)Android1.6松餅(éclair)Android2.0/2.1凍酸奶(Froyo)Android2.2姜餅(Gingerbread)Android2.3蜂巢(Honeycomb)Android3.0冰淇淋三明治(IceCreamSandwich)Android4.0果凍豆(JellyBean)Android4.1和Android4.2奇巧巧克力(KitKat)Android4.4

甜點版本代號棒棒糖(Lollipop)Android5.0棉花糖(Marshmallow)Android6.0牛軋?zhí)牵∟ougat)Android7.0奧利奧(Oreo)Android8.0派(Pie)Android9.0(續(xù)表)

在2019年9月3日,Google發(fā)布Android10版本。自此版本之后Android不再使用甜點來命名,之后依次發(fā)布了Android11版本、Android12開發(fā)預覽版本、Android12版本與2022年的Android13版本。每次一的版本更新相較于之前都有了不同程度的改進。內容安排1.1Android簡介1.2Android特點1.3本章總結1.2.1Android系統(tǒng)架構

從上層到底層共包括四層,分別是應用程序層、應用程序框架層、系統(tǒng)運行庫層和Linux內核層。采用分層架構的思想1.2.2Android四大組件Android四大組件分別為Activity、Service、ContentProvider、BroadcastReceiver。Activity:是一種展示型組件,用于向用戶直接展示一個界面,并且可以接收用戶的輸入信息從而進行交互。Activity組件的主要作用是展示一個界面并和用戶交互,扮演的是一種前臺界面的角色。Service:是一種計算型組件,用于在后臺執(zhí)行一系列計算任務。Service組件有兩種狀態(tài):啟動狀態(tài)和綁定狀態(tài)。當服務處于啟動狀態(tài)時,Service內部可以做一些后臺計算,并且不需要和外界有直接的交互。當Service處于綁定狀態(tài)時服務內部同樣進行后臺計算,但是處于這種狀態(tài)時外界可以很方便地和Service組件進行通信。ContentProvider:一種數(shù)據(jù)共享型組件,用于向其它組件和其它應用共享數(shù)據(jù)。Android平臺提供了ContentProvider,使一個應用程序可以把指定的數(shù)據(jù)集提供給其它應用程序,其它應用程序通過ContentResolver從該內容提取器種獲取或存入數(shù)據(jù)。BroadcastReceiver:是一種消息型組件,用于在不同的組件或者不同的應用之間傳遞消息。BroadcastReceiver的注冊方式有兩種:靜態(tài)注冊和動態(tài)注冊。在實際開發(fā)中通過Context的一系類send()方法來發(fā)送廣播,被發(fā)送的廣播會被系統(tǒng)發(fā)送給感興趣的廣播接收者,發(fā)送和接收過程的匹配通過廣播接收者來描述。1.2.3Android平臺特性應用程序框架支持組件的重用與替換。Dalvik虛擬機專門為移動設備進行了優(yōu)化。相對于Java虛擬機速度要快很多。內部集成瀏覽器基于開源的WebKit引擎。有了內置的瀏覽器,優(yōu)化的圖形庫包括2D和3D圖形庫,3D圖形庫基于OpenGL。SQLite用作結構化的數(shù)據(jù)存儲。多媒體支持包括常見的音頻、視頻和靜態(tài)影像文件格式如MPEG4、H.264、MP3、AAC、AMR、JGP、PNG、GIF。藍牙(Bluetooth)、EDGE、3G、WiFi(依賴于硬件)。照相機、GPS、指南針和加速度計(依賴于硬件)。豐富的開發(fā)環(huán)境包括設備模擬器、調試工具、內存及性能分析圖表和集成的開發(fā)環(huán)境插件。Google提供了Android開發(fā)包SDK,其中包含了大量的類庫和開發(fā)工具。1.2.4Android平臺的優(yōu)勢開放性豐富的硬件選擇。豐富的硬件選擇。無縫結合的Google應用。軟件推廣相對容易軟件開發(fā)技術內容安排1.1Android簡介1.2Android特點1.3本章總結本章分別從Android的釋義與應用、Android版本的發(fā)布歷史、Android的系統(tǒng)架構、組件及平臺特性,較為全面地向學習者介紹了Android系統(tǒng)。通過對Android的系統(tǒng)架構、組件及平臺特性的學習,有助于學習者理解應用項目開發(fā)設計。1.3本章總結第2章AndroidStudio使用入門Android應用程序開發(fā)技術內容安排2.1AndroidStudio環(huán)境配置2.2運行第一個Android程序2.3Android項目結構目錄2.4

AndroidManifest.xml清單文件2.5AndroidStudio日志工具的使用2.6本章總結

內容安排

2.1AndroidStudio環(huán)境配置2.2運行第一個Android程序2.3Android項目結構目錄2.4

AndroidManifest.xml清單文件2.5AndroidStudio日志工具的使用2.6本章總結

2.1.1Windows下配置Java環(huán)境安裝

Java開發(fā)工具包(JDK)從

Oracle的Java網(wǎng)站:JDKJavaSE下載最新版本的

Java。創(chuàng)建JAVA_HOME變量通常JDK文件夾所在路徑比較長,難以書寫,也難以記憶,使用自定義系統(tǒng)變量JAVA_HOME來代替。設置Path變量在Path變量中添加JDK的bin路徑。在系統(tǒng)變量列表中找到Path變量,選擇Path變量,單擊“編輯”按鈕,在“編輯環(huán)境變量”對話框中添加“%JAVA-HOME\bin”。2.1.1Windows下配置Java環(huán)境設置CLASSPATH變量在系統(tǒng)變量列表里查看CLASSPATH變量,如果不存在,則新建變量CLASSPATH,若存在則選中該變量,單擊“編輯”按鈕,在“編輯系統(tǒng)變量”的“變量值”文本框添加“.;%JAVA_HOME%\lib

;%JAVA_HOME%\lib\tools.jar;”。2.1.1Windows下配置Java環(huán)境2.1.1Windows下配置Java環(huán)境測試變量配置情況

完成以上三項配置,需要測試一下這三個變量設置是否成功,方法是在命令行狀態(tài)提示符后邊鍵入命令“javac”,然后按Enter鍵,若出現(xiàn)如圖所示,則說明配置成功。2.1.2Windows下配置AndroidStudio環(huán)境Android

Studio的安裝Android

Studio的下載地址為/studio下載SDK和GradleSDK是Android開發(fā)必備的資源包,下載Android

Studio新版本一般會自動下載最新版本的Android

SDK和最新的Gradle的匹配版本。內容安排2.1AndroidStudio環(huán)境配置

2.2運行第一個Android程序2.3Android項目結構目錄2.4

AndroidManifest.xml清單文件2.5AndroidStudio日志工具的使用2.6本章總結

2.2.1新建一個Android項目點擊歡迎界面中的新建項目按鈕即可開啟創(chuàng)建Android應用工程2.2.1新建一個Android項目此頁面選擇默認的創(chuàng)建手機應用程序的Empty

Activity模板,然后點擊Next按鈕2.2.1新建一個Android項目配置新項目的項目名、包名、存儲位置、開發(fā)語言、允許運行的最低SDK版本等信息2.2.1新建一個Android項目安裝并同步更新Gradle首次進入Android

Studio,IDE系統(tǒng)會自動在網(wǎng)絡上查找并下載與當前Android

Studio版本相匹配的最新Gradle版本,然后同步Gradle配置。如果沒有聯(lián)網(wǎng),則需要下載和同步Gradle。連接網(wǎng)址/distributions/,下載指定的壓縮包。查看AndroidStudio對應的Gradle版本可通過選擇IDL中的File->ProjectStructure查看。本書使用的AndroidStudio版本為Gradle7.0.2。2.2.1新建一個Android項目同步項目重新啟動Android

Studio,依次選擇菜單File->SyncProjectwithGradleFiles即可完成項目與Gradle的更新。若Android

studio版本與Gradle版本不一致,則可能導致項目無法執(zhí)行等問題的出現(xiàn)。介紹Android

Studio自帶的模擬器創(chuàng)建過程。在Android

studio的工具欄上有AVD

Manager按鈕。單擊AVD

Manager按鈕進入AVD管理對話框。如果已經創(chuàng)建了AVD,則會出現(xiàn)AVD列表。首次進入AVD管理對話框。2.2.1新建一個Android項目單擊+Create

Virtual

Device按鈕,創(chuàng)建AVD,按照如下圖片順序進行操作。選擇設備參數(shù)2.2.1新建一個Android項目確定配置參數(shù)選擇系統(tǒng)圖片2.2.1新建一個Android項目顯示虛擬設備虛擬設備創(chuàng)建完成2.2.1新建一個Android項目2.2.2Android

StudioIDE界面菜單欄區(qū)Android

StudioIDE就是Android

Studio集成開發(fā)環(huán)境,可分為菜單欄區(qū)、工具欄按鈕區(qū)、項目及資源管理區(qū)、編輯工作區(qū)、狀態(tài)信息區(qū)和Gradle及設備文件管理區(qū)。工具欄按鈕區(qū)項目及資源管理區(qū)主要是展示項目目錄結構及文件資源的管理區(qū)域2.2.2Android

StudioIDE界面編輯工作區(qū)這個區(qū)域主要是用來編寫代碼和設計布局的相關編輯工作區(qū)域。2.2.2Android

StudioIDE界面狀態(tài)信息區(qū)這個區(qū)域位于軟件的底部,主要用于查看項目運行時的相關動態(tài)輸出信息。2.2.2Android

StudioIDE界面Gradle及設備文件管理區(qū)在軟件的右側上、下兩端有些標簽,在開發(fā)時會用到。其中Gradle是Gradle控制臺,顯示Gradle構建應用程序時的一些輸出信息。2.2.2Android

StudioIDE界面2.2.3運行程序運行程序Android

Studio

IDE運行程序可以使用以下三種方式:1)點擊菜單Run->Run;2)使用工具欄按鈕,點擊。3)使用快捷鍵Shift+F10。以Hello_Android為例,運行成功后可查看程序在虛擬機上的運行狀態(tài)。Android應用的簽名Android系統(tǒng)要求所有的應用都必須要有數(shù)字證書簽名。數(shù)字應用簽名有兩個作用:1)確定發(fā)布者的身份信息;2)保證應用的完整性。

創(chuàng)建數(shù)字簽名。依次選擇菜單Build->GenerateSignedBundle/APK…,進入對話框。在此選擇APK選項,單擊進入模塊所使用的數(shù)字證書頁。2.2.3運行程序假設目前沒有任何數(shù)字證書,則單擊Create

new...按鈕進入下一頁對話框,在File

name后的輸入框輸入文件名,在Key

store

path后的輸入框內單擊文件夾圖標,為即將創(chuàng)建的數(shù)字證書指定存儲位置,點擊OK按鈕,進入設置。選擇數(shù)字證書2.2.3運行程序新建數(shù)字證書生成數(shù)字證書2.2.3運行程序3.應用項目打包AndroidStudioIDE安裝在PC端,使用該IDE編譯好項目后,需要完成打包發(fā)布后項目才能在Android端運行。打包設置說明:在生成.apk時,需要指定輸出路徑、創(chuàng)建類型和簽署版本。創(chuàng)建類型。創(chuàng)建類型包括Debug和Release版本。Debug版本又稱為測試版,包含測試和日志信息,沒有進行優(yōu)化加密,適合程序調試過程中使用。Release版本又稱為發(fā)布版,是對外發(fā)布供用戶使用,進行了優(yōu)化加密。簽署版本。

V1版本(Jar

Signature):僅驗證未解壓的文件內容,這樣APK簽署后可進行很多修改,可以移動甚至重新壓縮文件。

V2版本(FULL

APK

Signature):驗證壓縮文件的所有字節(jié),在簽名后無法再更改。2.2.3運行程序2.2.4項目組成Android應用項目主要由三個部分組成:應用項目源代碼各種資源用項目標書清單文件AndroidManifest.xml內容安排2.1AndroidStudio環(huán)境配置2.2運行第一個Android程序

2.3Android項目結構目錄2.4

AndroidManifest.xml清單文件2.5AndroidStudio日志工具的使用2.6本章總結

2.3Android項目結構目錄Hello_Android項目為例,其項目目錄下主要包括4個子目錄、8個文件和一個外部依賴庫。.gradle和.idea目錄app目錄Gradle.gitinore文件build.gradle文件gradle.properties文件gradlew和gradlew.bat文件local.properties文件My_Keystone.jks文件Settings.gradleExternal

Libraries目錄內容安排2.1AndroidStudio環(huán)境配置2.2運行第一個Android程序2.3Android項目結構目錄

2.4

AndroidManifest.xml清單文件2.5AndroidStudio日志工具的使用2.6本章總結

2.4AndroidManifest.xml清單文件AndroidManifest.xml是整個項目的清單文件,或者又被稱之為配置文件,當新創(chuàng)建一個應用項目時,系統(tǒng)會自動創(chuàng)建該文件,存放在項目的app/src/main目錄下。AndroidManifest.xml文件可向Android系統(tǒng)提供應用的必要信息,系統(tǒng)必須具有這些信息才可以運行。內容安排2.1AndroidStudio環(huán)境配置2.2運行第一個Android程序2.3Android項目結構目錄2.4

AndroidManifest.xml清單文件

2.5AndroidStudio日志工具的使用2.6本章總結

2.5.1Logcat在Android項目中如果想查看日志,一般使用Logcat。單擊Android

Studio最下方狀態(tài)欄中的Logcat,則會出現(xiàn)Logcat界面。2.5.2DDMS

DDMS的全稱是DalvikDebugMonitorService,是Android開發(fā)環(huán)境中的Dalvik虛擬機調試監(jiān)控服務。提供測試設備截屏、查看特定進程正在運行的線程以及堆信息、Logcat、廣播狀態(tài)信息、模擬電話呼叫、模擬接收及發(fā)送SMS、虛擬地理坐標等服務。具體查看方式是:在Android

Studio中查看AS的SDK路徑。2.5.2DDMS啟動DDMS。進入到D:\SDK\tools目錄下,找到monitor.bat批量處理文件。2.5.2DDMS鼠標左鍵雙擊monitor.bat批量處理文件,會出現(xiàn)類似cmd的輸入面板,然后會迅速自動關閉。再等幾秒鐘會出現(xiàn)DDMS面板。2.5.2DDMS內容安排2.1AndroidStudio環(huán)境配置2.2運行第一個Android程序2.3Android項目結構目錄2.4

AndroidManifest.xml清單文件2.5AndroidStudio日志工具的使用

2.6本章總結

2.6本章總結本章詳細介紹了基于Windows平臺的AndroidStudio安裝及環(huán)境配置的具體流程。以“Hello_Android”為例,有助于學習者掌握一個項目的創(chuàng)建及運行步驟、Android

Studio

IDE界面結構、Android應用程序項目組成和項目結構目錄。通過學習AndroidManifest.xml清單文件和Android

Studio的日志工具有助于學習者進一步了解AndroidStudio開發(fā)環(huán)境。通過本章的學習有助于初次學習者更快掌握Android

Studio的使用。上機安裝AndroidStudio開發(fā)環(huán)境,并記錄安裝配置過程及所遇到的問題。創(chuàng)建并運行Hello_Android程序(展示不少于兩臺AVD的運行效果)。打包并發(fā)布Hello_Android程序(展示在真機上的運行效果)。

第3章Activity和ApplicationAndroid應用程序開發(fā)技術內容安排3.1Activity基本概念3.2運行狀態(tài)及生命周期3.3Android的資源管理3.4Application基本概念3.5本章總結

內容安排

3.1Activity基本概念3.2運行狀態(tài)及生命周期3.3Android的資源管理3.4Application基本概念3.5本章總結

3.1Application基本概念Activity是Android最基本也是最為常見的組件。Activity提供用戶與Android系統(tǒng)交互的接口,用戶通過Activity來完成自己的目的。一個Android應用程序通常由多個Activity組成,但是其中只有一個為主Activity,Android應用程序中的多個Activity可以直接相互調用以完成不同工作。啟動一個Activity有三種方法。1)第一種方法是在OnCreate()方法內調用setContentView()方法,用來指定將要啟動的res/layout目錄下的布局文件。2)第二種方法是調用startActivity(),用于啟動一個新的Activity。3)第三種方法是調用startActivityforResult(),用于啟動一個Activity,并在該Activity結束時返回信息。返回一個Activity也有三種方法。1)第一種是調用finish()方法來關閉。2)第二種是可選擇調用setResult()返回數(shù)據(jù)給上一級的Activity。3)第三種是當使用startActivityforResult()啟動Activity時,則需要調用finishActivity()方法關閉其父Activity。3.1Application基本概念內容安排3.1Activity基本概念

3.2運行狀態(tài)及生命周期3.3Android的資源管理3.4Application基本概念3.5本章總結

3.2運行狀態(tài)及生命周期應用項目進程從創(chuàng)建到結束的全過程稱之為應用項目的生命周期。Android應用項目的生命周期是由Android框架進行管理,而不是由應用項目直接控制。

本章以Activity組件為例,說明Android系統(tǒng)如何管理程序組件的生命周期Activity在生命周期中共存在三個狀態(tài),這三個狀態(tài)如下:1.運行態(tài):指Activity運行于屏幕的最上層并且獲得了用戶焦點。2.暫停態(tài):指當前Activity依然存在,但是沒有獲得用戶焦點。處于暫停態(tài)的Activity保留了自己所使用的內存和用戶信息,但是在系統(tǒng)極度缺乏資源的情況下,有可能會被終止以釋放資源。3.停止態(tài):指當前Activity完全被處于運行態(tài)的Activity遮擋住,其用戶界面完全不能被用戶看見。處于停止態(tài)的Activity依然存活,也保留了自己所使用的內存和用戶信息,但是一旦系統(tǒng)缺乏資源,停止態(tài)的Activity就會被終止以釋放資源。3.2.1

Activity運行狀態(tài)如圖為Activity生命周期中方法的調用過程。3.2.2Activity生命周期Activity的生命周期表現(xiàn)在三個層面。如果Activity離開可見階段,長時間失去焦點,就很可能被系統(tǒng)銷毀以釋放資源。當然,即使該Activity被銷毀掉,用戶對該Activity所做的更改也會被保存在Bundle對象中,當用戶需要重新顯示該Activity時,Android系統(tǒng)會根據(jù)之前保存的用戶更改信息將該Activity重建。3.2.2Activity生命周期Activity在生命周期中從一種狀態(tài)到另一種狀態(tài)時會激發(fā)相應的回調方法。名稱調用時間onCreate(BundlesavedInstanceState)創(chuàng)建Activity時調用。設置在該方法中,還以Bundle的形式提供對以前儲存的任何狀態(tài)的訪問。其中參數(shù)savedInstanceState對象是用于保存Activity的對象的狀態(tài)。onStart()Activity變?yōu)樵谄聊簧蠈τ脩艨梢姇r調用。onResume()Activity開始與用戶交互時調用(無論是啟動還是重啟一個活動,該方法總是被調用)。onPause()當Android系統(tǒng)要激活其他Activity時,該方法被調用,暫停或收回CPU和其他資源時調用。3.2.2Activity生命周期(續(xù)表)名稱調用時間onStop()Activity被停止并轉為不可見階段時調用。onRestart()重新啟動已經停止的Activity時調用。onDestroy()Activity被完全從系統(tǒng)內存中移除時調用。該方法被調用可能是因為有人直接調用finish()方法或者系統(tǒng)決定停止該活動以釋放資源。3.2.2Activity生命周期上面7個生命周期方法分別在4個階段按著一定的順序進行調用,這4個階段如下:啟動Activity:在這個階段依次執(zhí)行3個生命周期方法。分別是onCreate()、onStart()和onResume()。Activity失去焦點:如果在Activity獲得焦點的情況下進入其它的Activity或應用程序,這時當前的Activity會失去焦點。在這一階段,會依次執(zhí)行onPause()和onStop()方法。Activity重獲焦點:如果Activity重新獲得焦點,會依次執(zhí)行3個生命周期方法。分別是onRestart()、onStart()和onResume()。關閉Activity當Activity被關閉時,系統(tǒng)會依次執(zhí)行3個生命周期方法。分別是onPause()、onStop()和onDestroy()。3.2.2Activity生命周期android:noHistory當用戶離開

Activity并且其在屏幕上不再可見時,是否應從Activity堆棧中將其移除并完成(調用其finish()方法)?!皌rue”表示應將其完成,“false”表示不應將其完成。android:allowEmbedded嵌入式子項啟動。表示該

Activity可作為另一Activity的嵌入式子項啟動。android:alwaysRetainTaskState保留視圖內容不被系統(tǒng)清除。系統(tǒng)是否始終保持

Activity所在任務的狀態(tài)?!皌rue”表示保持,“false”表示允許系統(tǒng)在特定情況下將任務重置到其初始狀態(tài)。android:clearTaskOnLaunch重新啟動任務時根除。是否每當從主屏幕重新啟動任務時都從中移除根

Activity之外的所有Activity?!皌rue”表示始終將任務清除到只剩其根

Activity;“false”表示不做清除。

默認值為“false”。3.2.3Activity屬性android:autoRemoveFromRecents從瀏覽記錄中剔除,讓用戶不能從瀏覽記錄中切換到本程序(不會KILL掉進程)。android:excludeFromRecents官方定義是否應將該

Activity啟動的任務排除在最近使用的應用列表(即概覽屏幕)之外。即當該

Activity是新任務的根Activity時,此屬性確定任務是否應出現(xiàn)在最近使用的應用列表中。如果應將任務排除在列表之外,則設置

“true”;如果應將其包括在內,則設置“false”。

默認值為“false”。android:exported是否允許別人的程序調用本程序的Activity。官方定義Activity是否可由其它應用的組件啟動

?!皌rue”表示可以,“false”表示不可以。若為“false”,則

Activity只能由同一應用的組件或使用同一用戶ID的不同應用啟動。3.2.3Activity屬性android:finishOnTaskLaunch官方定義每當用戶再次啟動其任務(在主屏幕上選擇任務)時,是否應關閉(完成)現(xiàn)有

Activity實例—“true”表示應關閉,“false”表示不應關閉。

默認值為“false”。android:screenOrientationActivity在屏幕上的顯示方向。android:theme定義

Activity總體主題樣式資源。android:windowSoftInputModeActivity的主窗口與包含屏幕軟鍵盤的窗口的交互方式。3.2.3Activity屬性【例3-1】創(chuàng)建登錄Activity,登錄界面如圖所示。

登錄按鈕實現(xiàn)跳轉到下一個界面,并且判斷輸入的賬號、密碼是否符合規(guī)則(不為空),提示,登陸成功或失敗。注冊按鈕實現(xiàn)跳轉到注冊界面。3.2.4實現(xiàn)Android登錄的示例代碼打開AndroidStudio創(chuàng)建一個項目,項目名稱定義為ActivityDemo,包名為xsyu.jsj.samp3_1的空白工程。創(chuàng)建Activity。點擊File/New->Activity->EmptyActivity,彈出NewAndroidActivity對話框,命名為MainActivity。3.2.4實現(xiàn)Android登錄的示例代碼LoginActivity.java主要代碼為:3.2.4實現(xiàn)Android登錄的示例代碼Activity_login.xml主要代碼為:3.2.4實現(xiàn)Android登錄的示例代碼登錄功能,跳轉顯示頁面登錄。Success.java主要代碼為:3.2.4實現(xiàn)Android登錄的示例代碼activity_success.xml主要代碼為:3.2.4實現(xiàn)Android登錄的示例代碼運行結果如圖:(a)登錄界面

(b)跳轉界面3.2.4實現(xiàn)Android登錄的示例代碼內容安排3.1Activity基本概念3.2運行狀態(tài)及生命周期

3.3Android的資源管理3.4Application基本概念3.5本章總結

3.3Android資源管理通過點擊Android

Studio中左側樹狀結構圖中的res,可進行Android項目的資源管理。若未出現(xiàn)在res中,則可在res下創(chuàng)建Folder,然后新建資源。3.3Android資源管理大體上android資源種類有11類,其分類與訪問方式如下表。3.3.1分類與訪問方式animator用于定義屬性動畫的XML文件。R.anim

類訪問anim用于定義漸變動畫的XML文件。(屬性動畫也可保存在此目錄中,但為了區(qū)分這兩種類型,屬性動畫首選

animator/

目錄。)通過

R.anim

類訪問color用于定義顏色狀態(tài)列表的XML文件R.color

類訪問drawable位圖文件(.png、.9.png、.jpg、.gif)或編譯為以下可繪制對象資源子類型的XML文件:位圖文件、九宮格(可調整大小的位圖)、狀態(tài)列表、形狀、動畫可繪制對象、其他可繪制對象R.drawable

類訪問(續(xù)表)mipmap適用于不同啟動器圖標密度的可繪制對象文件

layout用于定義用戶界面布局的XML文件R.layout

類訪問menu用于定義應用菜單(如選項菜單、上下文菜單或子菜單)的XML文件R.menu

類訪問raw需以原始形式保存的任意文件。如要使用原始

InputStream

打開這些資源,請使用資源ID(即

R.raw.filename)調用

Resources.openRawResource()。但是,如需訪問原始文件名和文件層次結構,則可以考慮將某些資源保存在

assets/

目錄(而非

res/raw/)下。assets/

中的文件沒有資源ID,因此您只能使用

AssetManager

讀取這些文件。3.3.1分類與訪問方式(續(xù)表)values包含字符串、整型數(shù)和顏色等簡單值的XML文件。其他

res/

子目錄中的XML資源文件會根據(jù)XML文件名定義單個資源,而

values/

目錄中的文件可描述多個資源。對于此目錄中的文件,<resources>

元素的每個子元素均會定義一個資源。例如,<string>

元素會創(chuàng)建

R.string

資源,<color>

元素會創(chuàng)建

R.color

資源。由于每個資源均使用自己的XML元素進行定義,因此您可以隨意命名文件,并在某個文件中放入不同的資源類型。但是,您可能需要將獨特的資源類型放在不同的文件中,使其一目了然。例如,對于可在此目錄中創(chuàng)建的資源,下面給出了相應的文件名約定:arrays.xml:資源數(shù)組(類型數(shù)組)。colors.xml:顏色值。dimens.xml:尺寸值。strings.xml:字符串值。styles.xml:樣式。R.string、R.array

R.plurals

類訪問xml可在運行時通過調用

Resources.getXML()

讀取的任意XML文件。各種XML配置文件(如可搜索配置)都必須保存在此處

3.3.1分類與訪問方式(續(xù)表)font帶有擴展名的字體文件(如

.ttf、.otf

.ttc),或包含

<font-family>

元素的XML文件。如需詳細了解作為資源的字體,請參閱

XML中的字體。通過

R.font

類訪問values包含字符串、整型數(shù)和顏色等簡單值的XML文件。其他

res/

子目錄中的XML資源文件會根據(jù)XML文件名定義單個資源,而

values/

目錄中的文件可描述多個資源。對于此目錄中的文件,<resources>

元素的每個子元素均會定義一個資源。例如,<string>

元素會創(chuàng)建

R.string

資源,<color>

元素會創(chuàng)建

R.color

資源。由于每個資源均使用自己的XML元素進行定義,因此您可以隨意命名文件,并在某個文件中放入不同的資源類型。但是,您可能需要將獨特的資源類型放在不同的文件中,使其一目了然。例如,對于可在此目錄中創(chuàng)建的資源,下面給出了相應的文件名約定:arrays.xml:資源數(shù)組(類型數(shù)組)。colors.xml:顏色值。dimens.xml:尺寸值。strings.xml:字符串值。styles.xml:樣式。R.string、R.array

R.plurals

類訪問3.3.1分類與訪問方式字符串資源為應用提供具有可選文本樣式和格式設置的文本字符串。共有三種類型的資源可為應用提供字符串:String提供單個字符串的

XML資源。StringArray提供字符串數(shù)組的

XML資源。QuantityStrings(Plurals)帶有用于多元化的不同字符串的

XML資源。3.3.2

strings.xml文本資源文件定義字符串和數(shù)值在string.xml中定義字符串資源,代碼如下。

定義字符串數(shù)組在strings.xml定義如下代碼:3.3.2

strings.xml文本資源文件打開colors.xml文件,可添加顏色命名,代碼如下。3.3.3colors.xml顏色設置資源文件dimens.xml用來定義控件的尺寸和文字的大小,便于做屏幕適配。3.3.4dimens.xml尺寸定義資源文件首先按照如圖所示創(chuàng)建dimens.xml文件。定義控件尺寸布局設置button控件尺寸。要求布局中l(wèi)ayout_width和layout_height值設置為wrap_content,否則dimen定義無效。3.3.4dimens.xml尺寸定義資源文件設置后效果圖3.3.4dimens.xml尺寸定義資源文件3.3.5themes.xml主題風格資源文件themes.xml主要用來存放Android的主題與樣式。在新版本的Androidstudio的values目錄中,有theme.xml和theme.xml(night)兩個文件,分別標識Android的日常主題樣式和夜間模式。若想取消默認應用主題中的夜間模式,只需將Theme.MaterialComponents.DayNight.DarkActionBar更改為Theme.MaterialComponents.Night.NoActionBar。在themes.xml中可創(chuàng)建新樣式,完成主題和樣式的更換。在themes.xml中可創(chuàng)建新樣式,完成主題和樣式的更換。3.3.5themes.xml主題風格資源文件設置Android主題,如圖所示。運行效果如圖3-14所示。3.3.5themes.xml主題風格資源文件運行效果如圖所示。3.3.5themes.xml主題風格資源文件3.3.6圖像資源目錄片資源管理涉及到drawable文件夾和mipmap文件夾。如圖所示。其中,Drawable文件夾存儲bitmap文件、9-patch文件和xml文件。Mipmap文件夾用于存放APP的ICON圖標文件。內容安排3.1Activity基本概念3.2運行狀態(tài)及生命周期3.3Android的資源管理

3.4Application基本概念3.5本章總結

3.4Application基本概念Application是維護應用全局狀態(tài)的基類,應用進程啟動時Android系統(tǒng)會創(chuàng)建application類并調用類的onCreate()函數(shù),application類是context類的子類。Application和Act

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論