FrameLayout:该布局container可以用来占有屏幕的某块区域来显示单一的对象,可以包含有多个widgets或者是container,但是所有被包含的widgets或者是container必须被固定到屏幕的左上角,并且一层覆盖一层,不能通过为一个widgets或者是container指定一个位置。Container所包含的widgets或者是container的队列是采用的堆栈的结构,最后加进来的widgets或者是container显示在最上面。所以后一个widgets或者是container将会直接覆盖在前一个widgets或者是container之上,把它们部份或全部挡住(除非后一个widgets或者是container是透明的,必须得到FrameLayout Container的允许)。
其中Main.xml 代码如下:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
<TextView
android:textColor = "#0000FF"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:text = "@string/hello2"
/>
</FrameLayout>
Strings.xml代码如下:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Hello World, LayoutTestActivity!</string>
<string name="app_name">LayoutTest</string>
<string name="hello2">Hello World, I can not be LOST!</string>
</resources>
如下图,其中TextView Hello2是最后FrameLayout最后加入的,所以该TextView应该是覆盖整个屏幕的,TextView hello1被其覆盖:

本文详细解释了FrameLayout在Android布局管理中的作用,包括其特性、使用方法及实例解析,帮助开发者掌握如何利用FrameLayout实现组件的堆叠与覆盖。

7906

被折叠的 条评论
为什么被折叠?



