編輯:關於Android編程
由於第一次寫博客,裡面難免有些錯誤與不足,希望大家可以幫忙多多指點。下面我將從三個方面給大家介紹一下android開發吧,也是對我前一段時間學習的總結吧。
第一,Android Studio的安裝
在大二的時候接觸過android應用開發,當時用的是Eclipse+SDK,由於是集成的,所以當初並沒有發現安裝很難。後來才發現android studio的安裝也有很深的學問。首先要下載android Studio安裝包,本人建議從google上下載原裝的,但是要翻牆。當然大家也可以從http://www.androiddevtools.cn/上下載,這個網站上提供了android開發的常見工具,也非常方便。以2.0正式版為例吧,,下載完成後,進行安裝。
(1)安裝界面,點擊下一步
(2)若第一次安裝,一直點擊next
(3)安裝完成後,點擊運行
(4)首次打開會有以下提示,我們選擇第二個
(5)打開後,選擇第一標准模式,然後Android Studio會自動下載相關的軟件,這個階段可能花費時間較長
(6)安裝完成後,點擊finish按鈕,在首頁右下角的Configure選擇,SDKManager
選擇安裝一些常用的android開發包(android4.03,HAXM,和buildtools等,看自己實際需要啦),大家不用全部安裝,只安裝部分即可。。
(7)HelloWorld!檢驗是否安裝成功
我們創建一個新的項目,默認MyApplication,點擊next
這個是選擇開發哪種安卓設備,第一個是手機和平板,其中Minimum代表的是能成功運行的最低android版本,而且97.4%代表可以在這麼多安卓設備上成功運行。點擊next
這個是android提供的一些初始界面,說白了就是模板
點擊next,最後創建完成。首次創建,androidstudio會比較慢,因為它會下載和加載相應的東西。
然後,點擊在avd,創建一個虛擬機
然後點擊綠三角,即在虛擬機上運行。成功圖示:
若沒有成功,大家也不要灰心,自己多加鑽研,上網查找相關資料,肯定可以成功的。
Android SDK,Android ADT,Android AVD大家原來肯定聽說過,但是希望大家知道分別代表什麼意思?
SDK:Software development kit Android軟件開發包
ADT:Android development Tool Android開發工具
AVD:Android Virtual Device Android虛擬設備
希望大家都記住,不然以後有人問你sdk,adt是什麼東東,不知道就尴尬了。
附:聽一些開發大牛們對android自帶的虛擬機並不滿意(我也不清楚哪裡不好。。。)他們推薦使用Genymotion虛擬機,具體的大家可以上網查找,不過必須要去官網注冊才能登錄下載
Genymotion虛擬機界面
第二,Android生命周期
Android生命周期是在Android系統中程序從啟動到終止的全過程。android生命周期是非常重要的內容,因為對於一個相對完善的程序,我們要讓程序在不同的生命周期執行不同的命令。android的生命周期可以分為oncreate...ondestroy七個周期,每個周期代表不同階段,但是onsaveInstanceState不屬於android生命周期,主要用來保存動態的狀態信息,信息一般保存在Bundle中。
這是Activity生命周期的事件回調函數,不同的時期要執行的命令就寫在回調函數中。
函數
說明
onCreate()
Activity啟動後第一個被調用的函數,用來進行Activity的初始化。(創建View、綁定數據或恢復信息)
onStart()
當Activity顯示在屏幕上時,該函數被調用。(一般用來初始化或啟動與更新界面相關的資源。)
onResume()
當Activity能夠與用戶交互,接受用戶輸入時,該函數被調用。
onPause()
當Activity進入暫停狀態時,該函數被調用。一般用來保存持久的數據、關閉動畫或釋放占用的資源。代碼必須簡短,因為另一個Activity必須等待該函數執行完畢後才能顯示在界面上。
onStop()
當Activity進入停止狀態時,該函數被調用。(一般用來暫停或停止與更新用戶界面相關的線程、計時器和服務。)
onRestart()
當Activity從停止狀態進入活動狀態前,調用該函數。
onDestroy()
在Activity被終止前,即進入非活動狀態前,該函數被調用。兩種情況OnDestroy被調用:1)當程序主動調用finish()函數:2)程序被Android系統終結。
為了更深刻的理解android生命周期,我們可以在HelloWorld的基礎上,在每個回調函數中添加Log標記,這樣我們就可以看到回調函數在什麼時候執行了。 在MainActivity中添加以上七個回調函數,然後分別添加Log.i("TAG","on...") 點擊運行,點擊不同的按鈕,我們可以看到不同的Log標記 第三,Android 常用控件及屬性 android中的控件和屬性很多,還是要靠大家自己去鑽研實踐的。 對於控件的布局我們通常在res/layout/acticity_main中設置(名字可以不同),若給控件添加監聽,則要在java文件中設置。 常見控件有:Button,ImageButton,TextView,EditText等。 其中,id屬性可以說是每個控件的唯一標識,我們可以通過findViewById(R.id.+id號)在java中引用控件,從而執行某些命令。 margin屬性是設置該控件四周距周圍控件的寬度。height和width屬性是設置控件的高度和寬度,以dp為單位。 gravity=“center”是這是控件相對父控件居中,以上屬性是所有控件都具有的通用屬性。 textsize是設置字體大小的,其中以sp為單位。 通過inputtype可以實現EditText的不同功能,比如實現密碼框和只能輸入數字等。 我們可以在java文件中為控件添加監聽事件,比如onclicklistener(點擊事件) 除此之外,還有長按事件和文本改變事件 通過文本改變事件我們可以隨時來檢測EditText的字數,從而實現限制字數的目的。 另外,我們還可以用Intent實現不同界面的跳轉,通過Intent的putExtra()方法和getExtra()方法實現信息的從一個界面向另一個界面的傳遞。如果我們想通過putExtra()傳遞對象,則需要把所傳遞對象的類進行序列化,即繼承 Serializable接口 其中startActivityForResult()方法可以實現新的activity關閉後向原來的activity傳遞信息。一般和onActivityResult()方法配對使用,新的activity通過setResult()傳遞信息,即得到返回後的信息執行那些操作。 注意:請求碼和結果碼都是在新的activity結束在onactivityresult()方法中有作用。可以識別這個返回的信息來自哪裡。 我們在打開app中會經常看到3s的廣告界面,我們可以用Handler的postDelayed(Runnable runnable,time)方法,在Runnable中重寫run()方法,執行相關命令。參數time是設定第一個停留時間,若3000則代表第一個界面顯示3s,然後執行相關命令。
本章只是寫了如何配置JDK,以及adt-bundle的配置。對於以前的adt-bundle的版本,會自帶CPU/ABI系統鏡像,經過本文所描述的兩個步驟後可以直接創建AV
美團的下拉刷新分為三個狀態:第一個狀態為下拉刷新狀態(pull to refresh),在這個狀態下是一個綠色的橢圓隨著下拉的距離動態改變其大小。第二個部分為放開刷新狀態
序言:Activity作為Android四大組件之一,其重要性不言而喻。本文目錄結構:1.Acticity是什麼2.Activity的創建3.Activity的生命周期4
如圖是效果圖是仿餓了的點餐界面1.點擊左側的ListView,通過在在適配器中設置Item來改變顏色,再通過notifyDataSetInvalidated來刷新並用lv