Android資源的使用之Layout

來源:互聯網
上載者:User

在Android應用中一個螢幕的視圖通常是通過載入自一個XML資源檔,這個XML檔案就是布局資源檔。一個布局資源也是通過ID號在R.java中標識,代碼中使用布局資源如下:

    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        // Set the layout for this activity.  You can find it        // in res/layout/hello_activity.xml        setContentView(R.layout.hello_activity);    }

setContentView(R.layout.hello_activity);指出Activity的視圖來自/res/layout/hello_activity.xml的布局資源檔

內容例如:

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"     android:orientation="vertical"     android:layout_width="fill_parent"     android:layout_height="fill_parent"     > <TextView    android:id="@+id/text1"     android:layout_width="fill_parent"      android:layout_height="wrap_content"      android:text="@string/hello"     />  <Button    android:id="@+id/b1"     android:layout_width="fill_parent"      android:layout_height="wrap_content"      android:text="@+string/hello"    />    </LinearLayout> 

這裡用到了線性頁面配置LinearLayout,這是Android中最常用的布局,表示布局中的組件按一個一行的顯示出來。

常用的布局還有FrameLayout(架構布局)、TableLayout(表格版面配置)、AbsoluteLayout(絕對位置布局)、RelativeLayout(相對位置布局)。

FrameLayout、LinearLayout、AbsoluteLayout、RelativeLayout均是android.view.ViewGroup的子類。

TableLayout則是LinearLayout的子類,用表格來排列組件,如果TableLayout中的組件沒有放入TableRow的話,那麼就會按LinearLayout顯示。

AbsoluteLayout則根據設定好的座標定位顯示,AbsoluteLayout中兩個重要屬性是:android:layout_x組件在螢幕中的X座標,android:layout_y組件在螢幕中的Y座標。

RelativeLayout是按照相對於某個組件的位置來進行布局的,也就是說參考某個組件,置於此組件的上、下、左、右。

FrameLayout則是一個比較特殊的布局,是多個組件靠左上方疊加放置。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.