Android使用者介面概覽

來源:互聯網
上載者:User

標籤:android   style   blog   http   color   使用   io   檔案   

使用者介面的概觀  
        全部的Android應用程式的使用者介面元素都是用View和ViewGroup對象構建的。View就是在手機螢幕上描繪一個能夠與使用者互動的一個對象。ViewGroup是包括View對象和其它ViewGroup對象的一個容器物件,以便定義所包括的介面的布局。
       Android提供的View和ViewGroup的子類的集合,為我們提供了了經常使用的輸入控制項(比方button和文字欄位) 和各種布局模型(比方線性布局和相對布局)

使用者介面的布局
       每一個應用程式的組件的使用者介面都是用View和ViewGroup對象的階層來定義的,1所看到的。每一個ViewGroup是用來組織View對象的一個隱形的一個容器。這些View對象可能是輸入控制項或者其它視窗小組件。這個階層樹依據你的需求可簡單可複雜(可是簡單對效能來說是最好的)

圖1. 定義UI布局的view階層的插圖

聲明一個布局(在Activity類種onCreate方法中調用setContentView(R.layout.main))後,你能夠在代碼中執行個體化一個View對

象和建立一個樹結構,可是最簡單和最有效方法是在一個xml檔案裡定義布局。這個XML檔案提供了一個可讀的布局結構,類似於HTML

View所相應的的XML元素的名字各自相應了它所代表的的Android類。所以一個<TextView>元素在UI中建立了一個TextView組件,一個<LinearLayout>元素建立了一個LinearLayout view group


舉例說明,一個簡單的包括text view和button的垂直布局例如以下: 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              android:orientation="vertical">
    <TextViewandroid:id="@+id/text"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:text="I am a TextView"/>
    <Buttonandroid:id="@+id/button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="I am a Button"/>
</LinearLayout>

當你在你的應用程式中載入一個布局資源時,Android將該布局資源檔的每一個節點初始化成執行時的對象 。能夠拿到這個對象(findViewById(R.id.tv))來定義附加的行為,查詢此對象的狀態,或者改動布局。

使用者介面的組件
不一定必須通過View和ViewGroup對象來建立UI。Android提供的幾個應用程式組件,為我們提供了標準的使用者介面布局,我們僅僅需為這個布局定義內容就能夠了。這些使用者介面組件(比方Action Bar,Dialogs,Status Notifications)都有自己唯一的一組APIs,這些APIs都定義在各自的文檔裡。


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.