Android學習筆記05:布局Layout介紹

來源:互聯網
上載者:User

1.Layout介紹

  為適應各種介面風格,滿足開發的需要,Android提供了5種布局方式,分別是LinearLayout(線性布局)、FrameLayout(架構布局)、RelativeLayout(相對布局)、AbsoluteLayout(絕對布局)以及TableLayout(表格版面配置),通過這5種布局我們可以在手機螢幕上隨心所欲的擺放各種控制項。

  在Android的系統中,可視化的控制項是從Android.view.View類中繼承而來。控制項的建立方式通常有2種方式:

  1、通過在xml布局檔案中配置控制項的各種屬性,然後在程式中載入要使用的控制項。

  2、直接在程式中設定控制項屬性,並載入控制項。

  xml布局檔案是android系統中定義控制項的常用方法,這樣做的目的與好處是顯而易見的,使程式碼與圖形UI分離,方便代碼及圖形UI的各自維護。

  xml布局檔案必須包含在res/layout目錄中,且每一個xml布局檔案的根節點可以是任意的視表徵圖簽。為xml檔案布局中的標籤指定id時需要使使用如下形式:

  android:id=“@+id/標籤名稱”

  每一個標籤的id都會在R類中產生與之對應的變數,該標籤名稱便儲存在R檔案當中了。

  如果是要使用xml布局檔案,則需要在oncreate方法中使用setContentView來載入指定的xml布局檔案。載入方法如下:

  public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main); }

2.Layout常用屬性

  在Android系統中表示單位長度的方式通常有三種,分別是px、dp、sp。

  px表示螢幕實際的象素。例如,320*480的螢幕即意味著該手機螢幕在橫向有320個象素,在縱向有480個象素。dp表示螢幕的物理尺寸,大小為1英寸的1/72。sp是與刻度無關的像素,與dp類似,但是可以根據使用者的字型大小喜好設定進行縮放。

  通常,如果設定表示長度、高度等屬性時可以使用dp 或sp。但如果設定字型,則需要使用sp。

  1、如何控制某一控制項在父控制項中的相對位置呢?  

  在Android系統中提供了layout_margin,用來控制某一控制項邊緣相對於父控制項的邊距。

  其中,android:layout_marginTop表示某一控制項相對於父控制項頂部的距離。android:layout_marginLeft表示某一控制項相對於父控制項左邊框的距離。android:layout_marginRight表示某一控制項相對於父控制項右邊框的距離。android:layout_marginButtom表示某一控制項相對於父控制項底部的距離。

   2、如何控制某一控制項中內容在該控制項中的相對位置呢?

  在Android系統中提供了padding,用來控制某一控制項中內容相對於該控制項邊緣的邊距。

  其中,android:paddingTop表示某一控制項中的內容相對於該控制項邊緣頂部的距離。android:paddingLeft表示某一控制項中的內容相對於該控制項左邊緣的距離。android:paddingRight表示某一控制項中的內容相對於該控制項右邊緣的距離。android:paddingButtom表示某一控制項中的內容相對於該控制項邊緣底部的距離。

  3、android:gravity和android:layout_gravity的區別

  android:gravity用於設定View組件的對齊,而android:layout_gravity用於設定Container組件的對齊。

 

相關文章

聯繫我們

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