久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区


曙海教育集團論壇3G手機技術專區(qū)Android系統(tǒng)開發(fā) → Android程序開發(fā)初級教程② ——將界面實現(xiàn)用XML編排


  共有9015人關注過本帖樹形打印

主題:Android程序開發(fā)初級教程② ——將界面實現(xiàn)用XML編排

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


加好友 發(fā)短信
等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
Android程序開發(fā)初級教程② ——將界面實現(xiàn)用XML編排  發(fā)帖心情 Post By:2010-12-2 14:49:45

你剛剛完成的"Hello, World"例子我們稱之為”程序化”的界面編排。意思就是說構建你的應用程序界面是直接使用的源代碼。如果你已經(jīng)完成過很多界面程序,你大概熟悉像此類的方式是多么脆弱:一個對布局小小的修改會對源代碼造成很頭疼的事情。如果忘掉與View的緊密結合,這個導致代碼出錯和浪費你的調試時間的界面問題也會很簡單。



這就是為什么Android提供了一種可替換的界面構建方式: 基于XML的布局文件。最簡單的解釋這個概念的方式就是展示一個例子。 我們就用剛才創(chuàng)建的項目來進行演示,達到相同的界面效果。



<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:text="Hello, Android"/>


AndroidXML布局文件的大體的結構很簡單。 它是一個標簽的樹,任何一個標簽就是View類的名字。在這個例子中, 它是一個很簡單的只有一個元素的樹,一個 TextView。 你可以使用任何繼承自View類的名字作為標簽的名字。包括在你的代碼中自定義的View類。這個結構可以很容易的構建界面,它比你在源代碼中使用的結構和語法更簡單。這個模式的設計靈感來自于Web開發(fā)。 就是可以將界面和應用程序邏輯分離的模式。



在這個例子中, 也有些是XML的屬性,下面是他們的含義:



屬性
含義

xmlns:android
這是XML命名空間的聲明,它是告訴Android的工具, 你將要涉及到公共的屬性已被定義在XML命名空間。在每一個Android的布局文件的最外邊的標簽必須有這個屬性。

android:layout_width
這個屬性定義了在屏幕上這個View可用的寬度是多少。

android:layout_height
這個屬性定義了在屏幕上這個View可用的高度是多少。

android:text
設置TextView所包含的文本內(nèi)容,當前設置為”Hello, Android”信息






以上就是一個XML布局文件的樣子,但是你需要放在哪里?它要放在你的項目目錄的res/ 文件夾下。 “res”是”resources”的縮寫,它是存放所有非代碼資源的文件夾,包含象圖片,本地化字符串和XML布局文件。

這些Eclipse的插件已經(jīng)給你創(chuàng)建好了,在我們上面的例子中,我們沒有使用它。在包瀏覽器中,展開res目錄的layout. 并且編輯 main.xml, 替換掉那個文本內(nèi)容,然后保存。



現(xiàn)在,在包瀏覽狀態(tài),打開在代碼文件夾中名為 R.java的文件, 你將看到下面的內(nèi)容:



public final class R {
    public static final class attr {
    };
    public static final class drawable {
        public static final int icon=0x7f020000;
    };
    public static final class layout {
        public static final int main=0x7f030000;
    };
    public static final class string {
        public static final int app_name=0x7f040000;
    };
};




一個項目的R.java文件是一個定義所有資源的索引文件。 使用這個類就像使用一種速記方式來引用你項目中包含的資源。這個有點特別的強大像對于Eclipse這類IDE的代碼編譯特性,因為它使你快速的,互動式的定位你正在尋找的特定引用。



到目前需要注意的重要事情是叫做”layout”的內(nèi)部類和他的成員變量”main”, 插件會通知你添加一個新的XML布局文件,然后從新產(chǎn)生這個R.java文件,比如你添加了新的資源到你的項目,你將會看到R.java也相應的改變了



最后重要的事情是你需要去修改你的HelloAndroid源代碼,去使用新的XML布局你的界面。替換掉編碼式的界面模式。下面是你的新代碼的樣子,你可以看到,代碼變得更加簡單了。



public class HelloAndroid extends Activity {

    /** Called when the activity is first created. */

    @Override

    public void onCreate(Bundle icicle) {

        super.onCreate(icicle);

        setContentView(R.layout.main);

    }

}



當你做這些改變的時候,不要僅僅復制,粘貼到你的代碼中,嘗試去體驗R.java的代碼編譯特點。你會發(fā)現(xiàn)它對你有很大的幫助。



現(xiàn)在完成這些改變以后,你就可以重新運行你的程序,然后你會發(fā)現(xiàn)兩種不同的界面編排方式會產(chǎn)生同樣的效果。

支持(0中立(0反對(0單帖管理 | 引用 | 回復 回到頂部

返回版面帖子列表

Android程序開發(fā)初級教程② ——將界面實現(xiàn)用XML編排








簽名
久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区
欧美日韩精品一二三区| 国产成人激情av| 久久久综合精品| 日韩一卡二卡三卡国产欧美| 欧美亚洲国产一区在线观看网站| 宅男一区二区三区| 欧美在线观看一区| 欧美一区二区观看视频| 精品美女在线播放| 国产午夜精品在线观看| 国产精品盗摄一区二区三区| 亚洲日本丝袜连裤袜办公室| 亚洲最大成人网4388xx| 午夜精品福利一区二区三区蜜桃| 免费看日韩精品| 粉嫩aⅴ一区二区三区四区五区| 91传媒视频免费| 奇米精品在线| 欧美日韩一卡二卡| 欧美不卡一区二区三区四区| 中文字幕第一区综合| 亚洲激情中文1区| 精品中文字幕一区二区小辣椒| 91在线视频在线| 日韩亚洲视频在线| 69av一区二区三区| 精品在线视频一区二区三区| 精品一区二区日本| 在线免费观看日韩欧美| 26uuu亚洲| 亚洲成人av资源| 成人午夜免费av| 欧美日韩精品综合| 在线播放欧美女士性生活| 国产精品毛片久久久久久久| 日本在线播放一区二区三区| 99国产欧美另类久久久精品 | 国产成人精品免费| 国产精品久久精品国产| 色婷婷综合久久| 欧美激情一区二区三区全黄| 天天色天天操综合| 91在线观看一区二区| 亚洲欧美日韩不卡一区二区三区| 日韩一区二区三区视频| 亚洲色图第一区| 成人免费观看视频| 亚洲欧洲一区二区| 国产三级精品在线| 蜜桃视频一区二区三区在线观看| 欧美国产乱子伦| 婷婷久久综合九色综合伊人色| 99麻豆久久久国产精品免费| 亚洲国产一区二区三区在线| 欧美成人一区二区| 日韩电影网1区2区| 国偷自产av一区二区三区小尤奈| 欧美日韩一级视频| 亚洲五月六月丁香激情| 91一区二区三区在线播放| 色综合色狠狠综合色| 国产欧美日韩不卡| 久久成人18免费观看| 奇米视频888战线精品播放| 精品免费国产二区三区| 美女诱惑一区二区| 婷婷精品国产一区二区三区日韩| 欧美激情一区二区三区蜜桃视频| 国产激情精品久久久第一区二区 | 亚洲在线不卡| 国产精品久久久久一区二区三区| 国产一区二区成人久久免费影院 | 成人精品电影在线观看| 中文精品一区二区三区| 久久精品亚洲国产奇米99| 久久99国产精品尤物| 亚洲国产欧美日韩另类综合| 91丨porny丨首页| 欧美老人xxxx18| 亚洲午夜久久久久久久久电影院 | 亚洲乱码国产乱码精品精小说 | 亚洲一区在线观看视频| 不卡一区二区三区视频| 欧美精品在线视频| 麻豆精品一区二区三区| 夜夜爽99久久国产综合精品女不卡 | 成人免费黄色大片| 91精品久久久久久久99蜜桃| 九九九久久久精品| 欧美日韩中文国产| 日本视频中文字幕一区二区三区| 手机在线观看国产精品| 一区二区三区日本| 亚洲精品久久久久久国产精华液| 91精品国产综合久久久久久丝袜 | 欧洲国产伦久久久久久久| 亚洲成人激情自拍| 亚洲国产一区二区三区在线播| 亚洲黄色小说网站| 欧美日韩综合精品| 亚洲尤物视频在线| 亚洲a∨一区二区三区| 亚洲在线视频免费观看| 亚洲一区二区三区加勒比| 日韩福利视频导航| 欧美日韩国产一区二区三区地区| 麻豆91在线观看| 欧美精品乱人伦久久久久久| 国产一区二区不卡老阿姨| 91精品欧美久久久久久动漫| 成人久久久精品乱码一区二区三区| 日韩一级黄色片| 99国产精品久| 日韩一区中文字幕| 亚洲人成人77777线观看| 免费观看在线色综合| 在线播放91灌醉迷j高跟美女 | 久久视频一区二区| 国产精品青青草| 亚洲另类在线制服丝袜| 亚洲视频在线二区| 欧美日韩国产高清一区二区三区 | 蜜桃av久久久亚洲精品| 亚洲一区影音先锋| 日本韩国欧美国产| 大尺度一区二区| 国产日韩影视精品| 精品国产综合久久| 亚洲va天堂va国产va久| 欧美日韩一区成人| 91麻豆视频网站| 一区二区三区四区激情| 欧美午夜精品免费| 91在线视频观看| 亚洲国产精品人人做人人爽| 欧美日本精品一区二区三区| 91麻豆swag| 午夜精品久久久久| 欧美zozo另类异族| 日韩三级在线播放| 粉嫩av一区二区三区| 亚洲欧美日韩系列| 欧美欧美欧美欧美首页| 99re6热在线精品视频播放速度| 一区二区三区在线免费观看| 欧美人妖巨大在线| 久久99久久精品国产| 麻豆国产精品一区二区三区 | 国产91丝袜在线播放九色| 中文字幕精品一区二区三区精品| 日韩资源av在线| 不卡电影一区二区三区| 樱花影视一区二区| 欧美一级淫片007| 久久久久久久久久久久久9999| 开心九九激情九九欧美日韩精美视频电影 | 久久久噜噜噜久久人人看| 欧美在线视频二区| 春色校园综合激情亚洲| 一区二区免费在线播放| 欧美v日韩v国产v| 色综合久久综合网97色综合| 91小宝寻花一区二区三区| 日日夜夜精品视频天天综合网| 欧美mv日韩mv国产网站app| 亚洲国产一区二区在线| 91老师国产黑色丝袜在线| 麻豆精品视频在线观看免费| 综合在线观看色| 欧美成人伊人久久综合网| 一本在线高清不卡dvd| 国产精品视频福利| 大桥未久av一区二区三区中文| 天天色天天爱天天射综合| 国产精品久久精品日日| 日韩欧美一区二区三区在线| 一区二区不卡在线| 国产精品青青草| 成人丝袜视频网| 美脚の诱脚舐め脚责91 | 91黄色激情网站| 国产精品一区二区三区四区五区 | 777xxx欧美| 伊人色综合久久天天五月婷| 国产精品视频免费一区| 国产suv精品一区二区6| 日韩在线a电影| 亚洲色欲色欲www| 久久嫩草精品久久久精品一| 欧美日韩一区二区在线视频| 色一情一乱一伦一区二区三区丨| 懂色一区二区三区av片| 粉嫩欧美一区二区三区高清影视 | 成人一道本在线| 国产一区二区主播在线| 麻豆国产精品777777在线| 亚洲国产一区二区三区| 亚洲精品亚洲人成人网在线播放| 久久久久高清精品| 欧美成人aa大片|