今天來說下 Android中幾大布局中的FrameLayout庆聘, FrameLayout是幾個布局中最簡單的一個布局泞边,我通常喜歡稱它為最純凈的布局。在這個布局中问麸,整個界面被當(dāng)成一塊空白備用區(qū)域往衷,所有的子元素都不能被指定放置的位置,它們統(tǒng)統(tǒng)放于這塊區(qū)域的左上角严卖,并且后面的子元素直接覆蓋在前面的子元素之上炼绘,將前面的子元素部分和全部遮擋。相同層級布局中 FrameLayout的效率也是最高的妄田,占用內(nèi)存相對來說也是較小的俺亮。
先上布局文件
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/white">
<TextView
android:layout_width="300dp"
android:layout_height="300dp"
android:gravity="center"
android:background="@android:color/holo_blue_bright"
android:text="我是第一層"/>
<TextView
android:layout_width="150dp"
android:layout_height="140dp"
android:gravity="center"
android:background="@android:color/holo_green_light"
android:text="我是第二層"/>
</FrameLayout>
效果.png
幀布局沒有什么特別要介紹的,這塊看著好像元素都能重疊顯示疟呐,是不是和
RelativeLayout有些相似呢脚曾?其實不然,RelativeLayout那些子元素位置的屬性在FrameLayout中是不能使用的启具。
- FrameLayout一般在設(shè)置Fragment的顯示區(qū)域時使用本讥。
- 還有就是在Android中每一個Activity的跟布局都是一個FrameLayout
Q/A
- Q 為啥FrameLayout介紹的這么簡單?
A 因為FrameLayout本來就簡單- Q 如果給Fragment設(shè)置容器的話我用RelativeLayout或者LinearLayout不是也可以嗎鲁冯?為啥還要使用FrameLayout拷沸?
A 首先使用RelativeLayout或者LinearLayout是可以的,但是在開始的時候也說了 FrameLayout的效率是最高的薯演,占用內(nèi)存相對來說也是較小的撞芍。
好了FrameLayout就介紹到這里
代碼只會按照你所寫的方式運行,不會按照你想的方式運行