摘要:舉例,有個第一層為公司,第二層為辦公室,第三層為工位,第四層是程序猿。若不設置的位置,則此四個文字都將默顯示在左上角,并且公司在最下面,程序猿在最上面。
前言
上一期我們給大家講解了LinearLayout,這一期我們為大家講解一下FrameLayout(幀布局)的使用,相較于其他布局,FrameLayout可以說的上是最簡單的一個,并且其使用范圍相對來說也相對較小,但是也是Android中的六大布局之一,面試的時候還是會碰到的,所以讓我們趕緊開始學習吧~
簡介在FrameLayout中,這個布局直接在屏幕上開辟出一塊空白的區域,所有添加到這個布局中的視圖都是以層疊的方式顯示,而它會把這些試圖默認放到這塊區域的左上角,第一個添加到布局中視圖顯示在最底層,最后一個被放在最頂層。上一層的視圖會覆蓋下一層的視圖,因此該布局類似于堆棧布局,這就是FrameLayout為什么被使用較少的原因。
FrameLayout的常用屬性很少就兩個
兩個屬性:
android:foreground:設置改幀布局容器的前景圖像
android:foregroundGravity:設置前景圖像顯示的位置
前景圖像:永遠處于幀布局最上面,直接面對用戶的圖像,就是不會被覆蓋的圖片。
可能有的小伙伴對這個解釋比較模糊,那么我們來用實際操作讓大家直觀的感受一下到底是什么意思吧!
上圖中可以看到background顧名思義就是設置背景,那么前景是什么,相信小伙伴們已經有點概念了,讓我們繼續往下看吧
相信小伙伴們看完上圖已經徹底明白了什么是前景圖像,同樣的代碼,只是將background變成foreground,可以明確的看出圖1中HelloWord依然可以看到,但是在圖2中,已經被擋住。我們可以這樣簡單的去理解,foreground其實就是一本書的封面,它把書中的內容全部遮蓋住了。
通過layout_gravity設定值,再配合layout_marginTop,layout_marginLeft來設置位置。
舉例,有4個TextView:第一層為公司,第二層為辦公室,第三層為工位,第四層是程序猿。若不設置TextView的位置,則此四個文字都將默顯示在左上角,并且公司在最下面,程序猿在最上面。要實現圖中四幅圖的位置效果,則分別對應以下設置:
(1)第一層公司 :android: layout_gravity="center"
(2) 第二層辦公室 :android: layout_gravity = "center" android:layout_marginTop="-150dp" (注意:此處是負數,因為 android:layout_gravity = "center" 表示水平和垂直方向上居中,基準線為視圖水平和垂直方向的中點,因為辦公室在基準線的上方向(負方向),所以為負數)
(3)第三層工位 :android:layout_gravity="top" android:layout_marginTop="40dp" android:layout_marginLeft="40dp" (注意:android:layout_gravity="top" 表示垂直方向頂端對齊,而水平方向是默認左對齊)
(4)第四層程序猿 : android:layout_gravity="center" android:layout_marginTop="80dp" (對應第二層辦公室的分析,就很容易理解,程序猿在基準線下方向(正方向),所以為負數。并且注意:此處的基準線不是屏幕的最上方,而是水平和垂直方向各自的中心線)
最終效果圖為:
結語關于FrameLayout的介紹就到這里啦,闊能部分小伙伴覺得今天的文章內容不是太多,主要是因為FrameLayout在實際項目中應用到的場景非常之少,所以大家簡單了解一哈就好了。但是!!!小伙伴們跟著我們一起學習已經有一周時間,相信肯定還有一小部分同學沒有創建自己的第一個項目,所以期望你們趕緊行動起來,將這一周的精彩內容都寫入你的第一個個人demo中吧。已經跟著我們一直在實戰的小伙伴,希望你們也可以回顧一下之前文章,子曰:學而時習之,不亦說乎?~
PS:如果還有未看懂的小伙伴,歡迎加入我們的QQ技術交流群:892271582,里面有各種大神回答小伙伴們遇到的問題哦~
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/76159.html
摘要:前言上一期我們給大家講解了的使用,這一期我們為大家講解一下相對布局的使用,是的六大布局之一,也是我們常用的布局之一,下面我們一起開始學習吧簡介相對布局允許子元素指定它們相對于其父元素或兄弟元素的位置,這是實際布局中最常用的布局方式之一。 前言 上一期我們給大家講解了FrameLayout的使用,這一期我們為大家講解一下RelativeLayout(相對布局)的使用,RelativeLa...
摘要:六大布局之簡介表格布局是將子分別排列成行和列的布局,是由許多對象組成的,表格布局以行列的形式管理子控件,每一個單元是一個或者對象。 前言 Hi,大家好,新的一周開始啦,讓我們繼續遨游在Android的知識海洋中吧!上一次我們講到了RelativeLayout,相信不少小伙伴已經著手實戰,那么今天我們為大家帶來六大布局中剩下的三個布局。本篇文章可以和前面的FrameLayout一同歸類到...
摘要:什么是界面布局為應用程序提供界面架構。線性布局指子控件以水平或垂直方式排列,正如其名字一樣,這個布局中的所有控件在線性方向上依次排列。可以把布局看作是一個可以放置很多控件的容器,它可以按照一定的規律調整控件的位置,從而實現精美的界面。 1. 什么是Layout? Layout——界面布局,為應用程序提供界面架構。控制Activity中控件的大小、位置、顏色等屬性的方法. Layout...
閱讀 3609·2021-11-15 11:37
閱讀 2974·2021-11-12 10:36
閱讀 4403·2021-09-22 15:51
閱讀 2381·2021-08-27 16:18
閱讀 882·2019-08-30 15:44
閱讀 2164·2019-08-30 10:58
閱讀 1769·2019-08-29 17:18
閱讀 3269·2019-08-28 18:25