Android框架布局管理器FrameLayout

  框架布局管理器是Android布局管理器之一,之前并没有接触过。简单来说,框架布局管理器是将组件都放在屏幕的左上角,所有的组件是层叠显示的。首先来看一下FrameLayout的文档: 
Android框架布局管理器FrameLayout_第1张图片  
    那么它的继承结构为: 
java.lang.Object 
   ↳ android.view.View 
   ↳ android.view.ViewGroup 
   ↳ android.widget.FrameLayout
 
    这和LinearLayout是类似的。下面我们创建一个项目来看看FrameLayout: 
Xml代码   收藏代码
  1. xml version="1.0" encoding="utf-8"?>  
  2. <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:layout_width="fill_parent"  
  4.     android:layout_height="fill_parent"  
  5.     android:orientation="vertical" >  
  6.     <ImageView  
  7.         android:id="@+id/img"  
  8.         android:layout_width="wrap_content"  
  9.         android:layout_height="wrap_content"  
  10.         android:contentDescription="这是一个图片"  
  11.         android:src="@drawable/ic_launcher" />  
  12.     <TextView  
  13.         android:id="@+id/text"  
  14.         android:layout_width="wrap_content"  
  15.         android:layout_height="wrap_content"  
  16.         android:text="这是提示文字" />  
  17.     <Button android:id="@+id/btn"   
  18.         android:layout_width="wrap_content"  
  19.         android:layout_height="wrap_content"  
  20.         android:text="这是按钮"/>  
  21. FrameLayout>  

    这里需要注意的就是之前使用的LinearLayout,现在需要改为FrameLayout,也就是我们使用的框架布局管理器。其中放置三个组件,这都是我们很熟悉的内容了,不用过多解释,下面直接运行程序来看一下效果: 
Android框架布局管理器FrameLayout_第2张图片  
    正如我们之前所说的,所有组件均在左上角叠加显示了。 
    和LinearLayout类似,要在程序中控制FrameLayout就会涉及到FrameLayout类和FrameLayout.LayoutParams类,我们就可以通过这两个类来对框架布局管理器进行控制了。下面还是先来看一下FrameLayout.LayoutParams的文档: 
Android框架布局管理器FrameLayout_第3张图片  
    这也是一个静态类,其继承结构为: 
java.lang.Object 
   ↳ android.view.ViewGroup.LayoutParams 
   ↳ android.view.ViewGroup.MarginLayoutParams 
   ↳ android.widget.FrameLayout.LayoutParams
 
    下面我们通过代码来控制FrameLayout: 
Java代码   收藏代码
  1. 这也是一个静态类,其继承结构为:  
  2. ava.lang.Object  
  3.   ↳ android.view.ViewGroup.LayoutParams  
  4.        ↳ android.view.ViewGroup.MarginLayoutParams  
  5.            ↳ android.widget.FrameLayout.LayoutParams  
  6. 下面我们通过代码来控制FrameLayout:  

    可以看出,这和LinearLayout的操作方式是类似的。下面来执行一下程序: 
Android框架布局管理器FrameLayout_第4张图片  
    可以看到,这和我们使用XML布局文件的显示效果是一致的。 

你可能感兴趣的:(android)