布局就像容器,里面可以裝下很多控件。布局里面還可以套用其他的布局。這樣就可以實(shí)現(xiàn)界面的多樣化以及設(shè)計(jì)的靈活性。在這個(gè)界面中,我們應(yīng)用了一個(gè)LinearLayout的布局,它是垂直向下擴(kuò)展的 ,所以創(chuàng)建的布局XML文件,以
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
節(jié)點(diǎn)作為開頭。一個(gè)布局容器里可以包括0或多個(gè)布局容器。LinearLayout線性的布局方式,要么上下,要么左右的添加控件,很常用
AbsoluteLayout可以讓子元素指定準(zhǔn)確的x/y坐標(biāo)值,并顯示在屏幕上。(0, 0)為左上角,當(dāng)向下或向右移動(dòng)時(shí),坐標(biāo)值將變大。AbsoluteLayout沒有頁(yè)邊框,允許元素之間互相重疊(盡管不推薦)。我們通常不推薦使用AbsoluteLayout,除非你有正當(dāng)理由要使用它,因?yàn)樗菇缑娲a太過剛性,以至于在不同的設(shè)備上可能不能很好地工作。
RelativeLayout允許子元素指定他們相對(duì)于其它元素或父元素的位置(通過ID指定)。因此,你可以以右對(duì)齊,或上下,或置于屏幕中央的形式來排列兩個(gè)元素。元素按順序排列,因此如果第一個(gè)元素在屏幕的中央,那么相對(duì)于這個(gè)元素的其它元素將以屏幕中央的相對(duì)位置來排列。如果使用XML來指定這個(gè)layout,在你定義它之前,被關(guān)聯(lián)的元素必須定義。
這是一個(gè)計(jì)數(shù)器的例子。
FrameLayout是最簡(jiǎn)單的一個(gè)布局對(duì)象。它被定制為你屏幕上的一個(gè)空白備用區(qū)域,之后你可以在其中填充一個(gè)單一對(duì)象 — 比如,一張你要發(fā)布的圖片。所有的子元素將會(huì)固定在屏幕的左上角;你不能為FrameLayout中的一個(gè)子元素指定一個(gè)位置。后一個(gè)子元素將會(huì)直接在前一個(gè)子元素之上進(jìn)行覆蓋填充,把它們部份或全部擋住(除非后一個(gè)子元素是透明的)。
http://blog.chinaunix.net/u2/86463/showart_1674836.html