日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

一個android工程的運行過程

 啊司com 2016-07-15
原地址http://leequer./blog/593272
首先 :當一個工程部署到模擬環(huán)境上后,當用戶點擊你的應用名字“android:label='@string/app_name'>”的時候,操作系統(tǒng)會根據(jù)配置清單文件(AndroidManifest.xml)尋找到下面的配置節(jié)點“
Java代碼
X

;
這個配置節(jié)點下的activity節(jié)點,這個節(jié)點中的
Java代碼

這兩個配置,告訴操作系統(tǒng),這個activity是程序運行的入口類,相當與main方法;在一個應用中只要有一個應用配這個屬性就行了;
然后 :我們看看被指定為程序入口的這個activity的代碼:
Java代碼
package com.android.activity; import android.app.Activity; importandroid.os.Bundle; public class HelloWorldActivity extends Activity{ @Override public void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState); setContentView(R.layout.main);} }
android平臺實例化這個activity類,其中的onCreate這個方法不是由程序員來調(diào)用的,是由android這個平臺來調(diào)用的,這個類被實例化后就直接調(diào)用這個方法了。其中的super調(diào)用的父類的方法,是用來畫出整個應用的界面的;
值得一提的是
Java代碼
setContentView(R.layout.main);
這端代碼:android的設計模式是遵守mvc設計模式的,c這層就是activity層,v層是xml文件,在工程目錄中的res下的layout目錄下的文件,布局文件,m業(yè)務層,要自己寫,不要和c層放到一起,這樣代碼的質(zhì)量很差;那我們回到這句代碼,我們現(xiàn)在知道activity相當與action了,那么在struts中負責跳轉(zhuǎn)頁面的代碼是mapping.forword('xxxx');我想大家都知道,那么類比,在activity中,負責跳轉(zhuǎn)的就是setContentview(xxx);括號中的內(nèi)容就是視圖層的引用。那我們再來看看這個引用的東西
Java代碼
R.layout.main
我前面的文章說過,R.java文件是用來引用資源的,那么看看這里我們就知道他引用了誰。對了,就是loayout目錄下的main.xml;我們可以看R.java文件中的代碼
Java代碼
package com.android.activity; public final class R { public staticfinal class attr { } public static final class drawable { publicstatic final int icon=0x7f020000; } public static final classlayout { public static final int main=0x7f030000; } public staticfinal class string { public static final int app_name=0x7f040001;public static final int hello=0x7f040000; } }
Java代碼
public static final class layout { public static final intmain=0x7f030000; }
這里就是剛才調(diào)用的東西,最終會對應工程目錄下的res下的layout下的main。xml文件,如果我們在layout下再建立一個androidxml類型的文件,保存后,會在R.java中自動生成對應的索引;
再然后
說道m(xù)ain.xml文件,我們看看這個文件,以往我們都是用html或者jsp來顯示頁面,現(xiàn)在用xml了,看看有什么不同,
Xml代碼

嚴格遵守xml文件的格式,
其中,標簽
Xml代碼
LinearLayout
直接翻譯中文是線性布局,那就是一種布局方式了,swing中也有,就是指在這個標簽中的元素每個元素占一行。還有絕對布局;不建議使用,因為不知道使用者的手機屏幕大小。還有相對布局:常用;
Xml代碼
TextView
相當于label標簽。
再來仔細看看,標簽中的屬性
Xml代碼
xmlns:android='http://schemas./apk/res/android' android:orientation='vertical'android:layout_width='fill_parent' android:layout_height='fill_parent' >android:layout_width='fill_parent'android:layout_height='wrap_content' android:text='@string/hello' /> 過程基本就是這樣了;

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多