1. 程式人生 > >小KING教你做android專案(一)

小KING教你做android專案(一)

寫在專案開始之前:

最近關於android的視訊教程,入門的書籍也已經有很多了,例如我的入門就是看了mars的視訊教程。但是這麼一圈學習下來,覺得真正快速提高的,不是在看視訊,而是在實際工作中動手做專案的時候。所以我就思量如何快速的提高學習效率,並且加深記憶呢?其實就是來做專案。因為有一定的基礎知識只有,如果不靠實際的專案來加深印象或者加深那種所見即所得的感受,是很難激發出初學者的興趣的。由於最近在教我的弟弟學習android,他只是一個大一的計算機新生,所以把這個教學過程以及教學經驗還有就是實際的專案經驗和過程都一一發出來,包括每一個階段的原始碼。而我們做的這個東西,其實就是我在工作中的經驗總結,我就是希望做一個通用的應用框架,不然公司每次要我們做一個應用的時候,都從頭來或者東平西湊的,效率很低。我們做好這個東西過後,以後只需要配置一下,同時替換對應的設計圖片就能成為一款新的應用,當然,特殊需求的功能再特殊來開發就好了,希望這個東西能實現我們的預期效果。順帶說明一下,所有的基礎知識,我都會在做專案的時候有所講解,但是可能不會特別的詳細,因為有些東西本來前期可能你都不會很明白,只需要照著做就是了,有些東西必然要深入過後你才能有好的理解,不然前面講也不是講的特別清楚,當然還需要各位自己能夠學會一項資料搜尋資料的節能,這樣印象更加深刻,接下來,我們就開始進入正題吧。

環境搭建:

我們採用的主要是用eclipse作為開發工具,JAVA是主要的開發android的語言,所以我是一個懶人,但是懶人改變世界我一直這樣認為,哈哈,具體的環境搭建,請參考 環境搭建 。同時如果已經安裝好了環境的同學,需要升級到最新sdk已經可能會遇到的問題請參看我之前寫的博文安卓模擬器Android SDK 4.0.3 R2 完整安裝教程。同時各位在安裝中遇到的問題,請留言,我一定會盡力詳細解答。由於我弟弟是一個程式幼猿,只學習了C語言,我又要上班,不可能有更多的時間來一一的教學,所以,為了讓其自立根生,同時讓其學會查資料所以用了以上的方法,結果效果還不錯,他也挺有成就感。如果到了這裡,說明畢竟這些東西我沒有怎麼說,都是各位自己弄好的不是麼?說明你們真的很有天賦,能很快搞定android。

新建一個專案:

操作步驟:進入到eclipse中,點選左上角的file,如果你的環境搭建正確,那麼點選這裡的NEW,那麼會出現

這裡直接選Android Application Project就好了。

接下來你需要給你的專案取一個名字,這裡我們使用的AppWork,下面的選擇的是你想建立的android的版本,這裡建議各位選擇較低的版本,這樣能夠適配更多的手機,因為Android是向下相容的,你如果版本選擇過高的話,低版本的就不能執行你的程式了。我這裡選擇的都是2.2的版本。不過還是看各位吧,我們就是比較隨意,其實出了問題去解決問題的過程也是最好的學習過程。



然後後面就不用管了,一路next過去吧,直接到最後fininsh。這樣一個空白的android專案就做好了。一般到這個時候,往往別人的路線就是寫個helloworld什麼的啊。我們為什麼要和他們一樣呢?helloworld你自己下來可以先去寫一個,我這裡就沒說了。

專案建好後展開就如下圖所示




接下來,就很必要給大家詳細說明一下了,各個資料夾的及資料夾下檔案的作用 了。同時預告一下,在這裡會出現一些問題,這些問題都是弟弟問的,可能有些童鞋也會遇到。比如這個問題,就是,他問我我在哪兒寫程式 ,我要做些什麼才可以。於是乎我就顯現介紹一下資料夾吧。

src資料夾:


這個資料夾下面主要就是放的我們的程式程式碼,就是所有的頁面實現的功能,以及工具等等程式碼存放的地方,這裡的MainActivity.java就是一個頁面,就是類似於你手機應用的第一個頁面,這裡還是空的什麼都沒有,而且是放在了com.king.appwork這個包下面。不知道我這個講解是不是清楚,如果懂java的和熟悉eclipse的請快速跳過。

弟弟問:為啥子名字叫MainActivity.java呢?可以是其他名字不?為什麼很多後面都要加一個activity呢?

小king答:這個名字其實是可以任意取的,只是為了自身識別的方便,凡是添加了Activity的都表示是一個android的頁面,而其他的沒有activity的可能只是一個工具類或者監聽器什麼之類的,這樣命名的好處就是便於區分。

接下來的這幾個資料夾


各位暫時可以不用管它,只需要略微注意的就是gen資料夾裡面會生成一個R.java檔案,這個檔案就類似於資源目錄檔案,以後我們需要用的到各種佈局以及控制元件都會自動註冊到裡面,呼叫的時候會用到,後面會詳細講.

接下來就是比較關鍵的檔案夾了res,


這個資料夾主要就是存放了所有我們應用的資源

其中有四個drawable資料夾,這個是用來放我們所有應用所要用到的圖片資源,或者圖示資源,我們看到的android應用的介面圖片都放到這裡。

弟弟問:為什麼drawable會有四個資料夾呢?

小king答:因為android最麻煩的就是多解析度適配,不同的資料夾下面我們對應需要放置不同解析度的圖片用的,不過才開始我們也可以暫時不考慮,在後期多解析度適配的時候才來做這一塊的事情,現在我們把圖片資源都放在drawable-hdpi裡面。

layout資料夾:這個資料夾裡面就是包含的所有的佈局,用一個通俗易懂的方式就是說這裡的一個activity_main.xml其實也就是可以理解成一個大的完整的圖片頁面,功能實現在src裡面,然後我們需要做的流程一般就是首先繪製好這個頁面,然後再程式裡面呼叫這個頁面,然後再實現功能。那麼這個頁面怎麼畫呢?我們後面會專門講。往往一個應用會有很多佈局檔案,所以各位童鞋在取名字的時候最好也有所區分。注意一下就好

menu資料夾:這個也是佈局頁面,不過是為了區分,專門建了一個資料夾,來處理的是我們按了android手機上的物理menu按鍵的時候彈出的樣式。

values資料夾:這個資料夾裡面放置的主要是一些配置資訊,例如strings.xml我們將應用中所有固定的文字資訊寫到裡面,並取一個英文名字的標示,這樣便於呼叫,同時修改和管理起來也很方便。如果要國際化的話,也會比較直接,這樣就不用到每一個佈局的中的頁面裡去修改,同時一個文字可以被呼叫多次也避免了重複。

最後還有一個叫AndroidManifest.xml的檔案,這個就是整個應用程式的配置檔案,例如是從哪個頁面啟動,然後頁面的一些基本設定, 是否顯示標題欄,是否允許橫屏豎屏的切換。這裡只需要注意一點的就是,請記住你每新增一個頁面,都需要將這個頁面註冊到這個xml裡面,說白了就是你新增一個acticity,你就需要去這個xml裡面寫幾句程式碼,不然程式找到你的頁面就會報錯,無法啟動。

好了,基本的android專案也介紹完了,今天的第一講也就差不多了,但是為了免俗,我決定還是不寫helloworld,我就放一個簡單的登陸頁面吧,大家下載後,匯入就可以了。

弟弟問:怎麼匯入?

小king答:左上角FILE--->Import,然後找到你對應的專案就可以啦!這個專案是登陸頁面的,大家先看看吧,肯定有問題,先留在那裡,或者留言,我來解答。下期會講解這個登陸頁面怎麼實現的。

PS:轉載請說明出處,本來我也不是什麼高手大神,也可能有很多錯誤,請高人勿鄙視,新人理解包涵,只是希望和大家多交流,我自己也和弟弟共同鞏固學習,提高進步。最後祝大家學習進步,工作順利,身體健康。