FrameLayout框架布局管理器:
说明:FrameLayout布局(帧布局)就是再屏幕上开辟一个区域以填充所有的组件,但是使用
FrameLayout布局会将所有的组件都放在屏幕的左上角,而且所有的组件可以层叠进行
显示。
跟线性布局管理器写法一样。
1. 通过main.xml配置
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
........(各个组件)
</FrameLayout>
2. 通过Activity动态配置:
package com.FrameLayout;
import android.app.Activity;
import android.os.Bundle;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import android.widget.FrameLayout;
import android.widget.FrameLayout.LayoutParams;
import android.widget.ImageView;
//本程序与线性布局管理器写法基本一样
public class FrameLayoutActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
FrameLayout frame = new FrameLayout(this);//定义帧布局管理器
FrameLayout.LayoutParams layoutPatam = new LayoutParams(
ViewGroup.LayoutParams.FILL_PARENT,
ViewGroup.LayoutParams.FILL_PARENT); //定义布局管理器参数
FrameLayout.LayoutParams viewPatam = new LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT); //定义显示组件参数
ImageView img = new ImageView(this); //定义图片组件
EditText edit = new EditText(this); //定义文本输入组件
Button but = new Button(this); //定义按钮
img.setImageResource(R.drawable.zheng); //定义显示图片
edit.setText("请输入姓名:"); //设置显示文字
but.setText("登录"); //设置显示文字
frame.addView(img,viewPatam); //增加组件
frame.addView(edit,viewPatam); //增加组件
frame.addView(but,viewPatam); //增加组件
setContentView(frame, layoutPatam); //向屏幕上增加布局管理器
}
}
小结:
1.框架布局是一个指定的区域内使用组件进行填充:
2.可以使用FrameLayout和FrameLayout.LayoutParams类手工配置布局。