<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > HelloWorld及Android項(xiàng)目結(jié)構(gòu)介紹

          HelloWorld及Android項(xiàng)目結(jié)構(gòu)介紹

          作者: 時(shí)間:2016-10-08 來源:網(wǎng)絡(luò) 收藏

          時(shí)間過的真快,斷斷續(xù)續(xù)做Android的事情也一年多了,剛開始為了參加Google的Android比賽和我哥們Zeaster一起做了一個(gè)軟件Zinfo,這個(gè)是一個(gè)SNS的構(gòu)思,信息共享平臺,更多的內(nèi)容可以去訪問我們的網(wǎng)站infosword ,不過去年就已經(jīng)就停止開發(fā)了(木有賺到刀了,只能先做點(diǎn)別的養(yǎng)家糊口咯-.-),如果有哪位兄弟對他感興趣,或者有更多更好的想法歡迎給我寫Email [haric.zhu@gmail.com],將來也許能重新整理整理繼續(xù)開發(fā)。

          本文引用地址:http://www.ex-cimer.com/article/201610/305446.htm

          一直想寫博客分享一下自己學(xué)習(xí)心得和開發(fā)經(jīng)驗(yàn),卻一直因?yàn)閼卸瓒鴽]能堅(jiān)持。因?yàn)橐恢痹诰W(wǎng)上從各種大蝦那學(xué)習(xí)經(jīng)驗(yàn),再潛水下去自己都覺得良心不安,所以打算在這里把自己對Android的一些經(jīng)驗(yàn)和想法跟大家分享,也督促自己好好學(xué)習(xí),天天向上。

          [正文]

          閑話少說,先來個(gè)加強(qiáng)版的HelloWorld介紹一下Android的概況和程序結(jié)構(gòu)吧,這個(gè)HelloWorld程序很簡單很簡單,界面如圖所示:

          按一下按鈕,彈出一個(gè)對話框,里面寫著Hello World! -.-

          下面就按步驟走一下開發(fā)流程,在這個(gè)流程中我會詳細(xì)解釋Android的項(xiàng)目結(jié)構(gòu)

          1 安裝開發(fā)環(huán)境:

          google推薦我們使用(Eclipse with the ADT plugin),ADT就是Android的開發(fā)插件,提供了一些調(diào)試工具什么的,在google code的android站點(diǎn)有詳細(xì)的介紹,按他標(biāo)準(zhǔn)來,我就不多嘴了[http://code.google.com/android/intro/installing.html ]

          2 新建項(xiàng)目:

          打開eclipse,新建項(xiàng)目->其他->然后選擇Android Project,這時(shí)候彈出來一個(gè)Title叫New Android Project的對話框,填寫如下圖所示:

          3 介紹項(xiàng)目結(jié)構(gòu):

          大家看下面的項(xiàng)目結(jié)構(gòu)圖示 :

          src里com.haric.hello下有一個(gè)HelloWorld.java,他的名字就來自于我們新建項(xiàng)目的時(shí)候填寫的Acivity name, 這個(gè)HelloWorld就繼承自Activity(Android Framework里面最重要的一個(gè)類,詳細(xì)信息可以參考 -> (Activity ), 我們簡單地理解為它是一個(gè)UI的容器,直接跟用戶打交道最前端的類。

          還有一個(gè)R.java,這個(gè)類是系統(tǒng)根據(jù)res文件夾中的內(nèi)容自動為你生成的,我們先講一下res文件夾,res是resources的縮寫,顧名思義,你程序中所需要的文字,圖片,布局文件等等資源都是放在這個(gè)文件夾下面的,你現(xiàn)在看到這個(gè)文件夾下面有

          drawable - 這個(gè)是放圖片的

          layout - 這個(gè)是放布局文件的

          values - 下面放字符串(strings.xml ),顏色(colors.xml ),數(shù)組(arrays.xml )

          (res下的東東不止這些,更多關(guān)于Resouces的相容請參考(Resources ))

          Android 幫我們把這些資源都管理起來,內(nèi)容資源化的作用是很明顯的,做國際化方便了,使用同一個(gè)資源的時(shí)候也方便也更節(jié)省空間(全局的引用),res文件夾中內(nèi)容變化,R.java都會重新編譯同步更新,所以這個(gè)類不需要你去手動更新了。

          最后是AndroidManifest.xml. 你每次添加一個(gè)Acivity都需要在這個(gè)文件中描述一下,這個(gè)文件很重要東東還比較多,將來會詳細(xì)講述這個(gè)文件的。(To Me:這個(gè)地方留個(gè)鏈接到時(shí)候鏈過去-.-)

          4 設(shè)計(jì)界面布局:

          接下來咱們要使用R.java了,首先我們在layout里新建一個(gè)文件hello_ world.xml, 編輯內(nèi)容如下:

          Xml代碼

          android:orientation=vertical

          android:layout_width=fill_parent

          android:layout_height=fill_parent

          >

          android:text=@string/click_me

          android:layout_width=wrap_content

          android:layout_height=wrap_content>

          android:orientation=vertical

          android:layout_width=fill_parent

          android:layout_height=fill_parent

          >

          android:text=@string/click_me

          android:layout_width=wrap_content

          android:layout_height=wrap_content>

          有同學(xué)問了那個(gè)main.xml呢,我建議你把它的名字改成hello_world.xml或者刪刪掉新加一個(gè)hello_world.xml,[tips] 因?yàn)轫?xiàng)目中會有很多個(gè)Activity,最好讓你的layout文件的名字跟相應(yīng)的Activity掛上鉤,方便將來編輯和使用。

          做完這一步啦,結(jié)果是啥?肯定編譯不過唄,嘿嘿,認(rèn)真的同學(xué)肯定注意到

          android:text=@string/click_me 這行,這個(gè)是指定你Button上顯示的文字,我們需要在res/values/strings.xml中加一行Click me這樣就能在layout文件中引用這個(gè)string資源了,好了布局弄完了,該在程序中使用它了

          5 在程序中使用布局:

          打開HelloWorld.java,編輯內(nèi)容如下

          Java代碼

          public void onCreate(Bundle savedInstanceState) {

          super.onCreate(savedInstanceState);


          上一頁 1 2 下一頁

          關(guān)鍵詞:

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();