Android布局FrameLayout的使用

來源:互聯網
上載者:User

序:本文介紹FrameLayout兩點:1.FrameLayout是什麼 2.FrameLayout如何設定其內子視圖(例如ImageView)的位置。

1. 什麼是FrameLayout布局?

FrameLayout布局是最簡單的布局方式,所有添加到這個布局中的視圖都是以層疊的方式顯示。第一個添加到布局中視圖顯示在最底層,最後一個被放在最頂層。上一層的視圖會覆蓋下一層的視圖,因此該布局類似於堆棧布局。注意點:a.預設對其方式是左上方對其。b.若要設定子視圖的位置,要設定layout_gravity屬性值。

2.FrameLayout如何設定其子視圖(例如ImageView)的位置?

通過layout_gravity設定值,再配合layout_marginTop,layout_marginLeft來設定位置。

舉例,下面程式結果中,有4幅圖:第一層圖天空大背景,第二層圖是鳥圖,第三層圖是觀音菩薩圖,第四層圖是汽車圖。若不設定ImageView的位置,則此四幅圖都將默顯示在左上方,並且第一層圖在最下面,第四層圖在最上面。要實現圖中四幅圖的位置效果,則分別對應以下設定:

a. 第一層天空背景圖 : layout_gravity="center"

b. 第二層鳥圖 : layout_gravity = "center" layout_marginTop="-70dp" (注意:此處是負數,因為 layout_gravity = "center" 表示水平和垂直方向上置中,基準線為視圖水平和垂直方向的中點,因為鳥在基準線的上方向(負方向),所以為負數)

c. 第三層觀音菩薩圖 :layout_gravity="top" layout_marginTop="20dp" layout_marginLeft="20dp' (注意:layout_gravity="top" 表示垂直方向頂端對齊,而水平方向是預設靠左對齊)

d. 第四層汽車圖 : layout_gravity="center" layout_marginTop="40dp" (對應第二層鳥圖的分析,就很容易理解,汽車在基準線下方向(正方向),所以為負數。並且注意:此處的基準線不是螢幕的最上方,而是水平和垂直方向各自的中心線)

以上的分析,請參考實際程式運行結果圖和視圖代碼。

---------------------------------------------------------------------------------------------------------------------------------------------

程式運行結果圖:


整頁模式代碼:/res/layout/activity_main.xml

<frameLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="fill_parent"android:layout_height="fill_parent" >     </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.