Android五种布局管理器之『FrameLayout』

http://www.sunchis.com/html/android/devolop/2011/0424/318.html

 

 

帧布局(FrameLayout)在屏幕上开辟了一块区域,在这块区域中可以添加多个子控件,但是所有的子控件都会被对齐到屏幕的左上角。帧布局的大小由其下属子控件中尺寸最大的那个子控 ……

帧布局(FrameLayout)在屏幕上开辟了一块区域,在这块区域中可以添加多个子控件,但是所有的子控件都会被对齐到屏幕的左上角。帧布局的大小由其下属子控件中尺寸最大的那个子控件来控制。如果子控件的大小都一样,同一时刻只能看到最上面的子控件,其他的则被其遮挡(在进行选项卡设计时会用到帧布局)。

FrameLayout继承自ViewGroup类,除了继承自父类的属性和方法,FrameLayout类中也包含了自己特有的一些属性和方法,见下表:

属性名称 对应方法 描述
android:foreground setForeground(Drawable) 设置绘制在所有子控件之上的内容
android:foregroundGravity setForegroundGravity(int) 设置绘制在所有子控件之上内容的gravity属性

提示:在FrameLayout中,子控件是通过栈来绘制的,所以后添加的子控件会被绘制在上层。

下面就来看一个帧布局的例子效果图:

其中Main.xml代码如下:

 
   
view plain    copy
  1. xml version="1.0" encoding="utf-8"?> 
  2. <FrameLayout  
  3.       android:id="@+id/FrameLayout01"  
  4.       android:layout_width="fill_parent"  
  5.       android:layout_height="fill_parent"  
  6.       android:background="#FFFFFF" 
  7.       xmlns:android="http://schemas.android.com/apk/res/android"> 
  8.        
  9.       <TextView  
  10.           android:text="大字体"  
  11.           android:id="@+id/TextView01"  
  12.           android:layout_width="wrap_content"  
  13.           android:layout_height="wrap_content" 
  14.           android:textSize="60px" 
  15.           android:textColor="#00FF00" 
  16.       > 
  17.       TextView> 
  18.       <TextView  
  19.           android:text="中字体"  
  20.           android:id="@+id/TextView02"  
  21.           android:layout_width="wrap_content"  
  22.           android:layout_height="wrap_content" 
  23.           android:textSize="40px" 
  24.           android:textColor="#FF0000" 
  25.       > 
  26.       TextView> 
  27.       <TextView  
  28.           android:text="小字体"  
  29.           android:id="@+id/TextView03"  
  30.           android:layout_width="wrap_content"  
  31.           android:layout_height="wrap_content" 
  32.           android:textSize="20px" 
  33.           android:textColor="#0000FF" 
  34.       > 
  35.       TextView> 
  36. FrameLayout> 

Activity代码为:

 
   
view plain    copy
  1. package com.sunchis; 
  2.  
  3. import android.app.Activity; 
  4. import android.os.Bundle; 
  5.  
  6. public class Android extends Activity {  
  7.     @Override 
  8.     public void onCreate(Bundle savedInstanceState) { 
  9.         super.onCreate(savedInstanceState); 
  10.         setContentView(R.layout.main);          //设置屏幕 
  11.     } 

 

你可能感兴趣的:(android)