Android 的 RelaliveLayout 布局的参数定义:


android:layout_above="@id/xxx"  --将控件置于给定ID控件之上
android:layout_below="@id/xxx"  --将控件置于给定ID控件之下

android:layout_toLeftOf="@id/xxx"  --将控件的右边缘和给定ID控件的左边缘对齐
android:layout_toRightOf="@id/xxx"  --将控件的左边缘和给定ID控件的右边缘对齐

android:layout_alignLeft="@id/xxx"  --将控件的左边缘和给定ID控件的左边缘对齐
android:layout_alignTop="@id/xxx"  --将控件的上边缘和给定ID控件的上边缘对齐
android:layout_alignRight="@id/xxx"  --将控件的右边缘和给定ID控件的右边缘对齐
android:layout_alignBottom="@id/xxx"  --将控件的底边缘和给定ID控件的底边缘对齐
android:layout_alignParentLeft="true"  --将控件的左边缘和父控件的左边缘对齐
android:layout_alignParentTop="true"  --将控件的上边缘和父控件的上边缘对齐
android:layout_alignParentRight="true"  --将控件的右边缘和父控件的右边缘对齐
android:layout_alignParentBottom="true" --将控件的底边缘和父控件的底边缘对齐
android:layout_centerInParent="true"  --将控件置于父控件的中心位置
android:layout_centerHorizontal="true"  --将控件置于水平方向的中心位置
android:layout_centerVertical="true"  --将控件置于垂直方向的中心位置



编程实例:



定义布局 activity_main.xml


    android:id="@+id/r1"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    android:background="#edab4a" >


   

        android:id="@+id/Shang"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentTop="true"

        android:layout_centerHorizontal="true"

        android:text="@string/shang" />


   

        android:id="@+id/Xia"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentBottom="true"

        android:layout_centerHorizontal="true"

        android:text="@string/xia" />


   

        android:id="@+id/Zuo"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentLeft="true"

        android:layout_centerVertical="true"

        android:text="@string/zuo" />


   

        android:id="@+id/You"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentRight="true"

        android:layout_centerVertical="true"

        android:text="@string/you" />


   

        android:contentDescription="@string/wutu"

        android:id="@+id/Start"

        android:layout_width="60dip"

        android:layout_height="100dip"

        android:layout_centerInParent="true"

        android:src="@drawable/fengjing" />



字符串资源 sring.xml


<?xml version="1.0" encoding="utf-8"?>


    RelativeLayout

    Settings

    Hello world!

   

   

   

   

    无图

    图片说明



主活动  MainActivity.java


package com.malakana.relativelayout;


import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.view.ViewGroup;

import android.widget.Button;

import android.widget.EditText;

import android.widget.ImageView;

import android.widget.RelativeLayout;

import android.app.Activity;


public class MainActivity extends Activity {


RelativeLayout r1;

Button shang;

Button xia;

Button zuo;

Button you;

ImageView currButton;

ImageView start;


@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);


r1 = (RelativeLayout) findViewById(R.id.r1);

shang = (Button) findViewById(R.id.Shang);

xia = (Button) findViewById(R.id.Xia);

zuo = (Button) findViewById(R.id.Zuo);

you = (Button) findViewById(R.id.You);

start = (ImageView) findViewById(R.id.Start);

currButton = start;


shang.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View arg0) {

// TODO Auto-generated method stub

EditText temp = new EditText(MainActivity.this);

temp.setText(R.string.shuoming);

//设置控件位置

RelativeLayout.LayoutParams lp_1 = 

new RelativeLayout.LayoutParams(

ViewGroup.LayoutParams.WRAP_CONTENT,95);

lp_1.addRule(RelativeLayout.ABOVE,currButton.getId()); //ABOVE  在currButton之上

lp_1.addRule(RelativeLayout.CENTER_HORIZONTAL,currButton.getId());

//将控件添加到布局中

r1.addView(temp,lp_1);

}});

xia.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View arg0) {

// TODO Auto-generated method stub

EditText temp = new EditText(MainActivity.this);

temp.setText(R.string.shuoming);

//设置控件位置

RelativeLayout.LayoutParams lp_1 = 

new RelativeLayout.LayoutParams(

ViewGroup.LayoutParams.WRAP_CONTENT,95);

lp_1.addRule(RelativeLayout.BELOW,currButton.getId()); //BELOW  在currButton之下

lp_1.addRule(RelativeLayout.CENTER_HORIZONTAL,currButton.getId());

//将控件添加到布局中

r1.addView(temp,lp_1);

}});

zuo.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View arg0) {

// TODO Auto-generated method stub

EditText temp = new EditText(MainActivity.this);

temp.setText(R.string.shuoming);

//设置控件位置

RelativeLayout.LayoutParams lp_1 = 

new RelativeLayout.LayoutParams(

ViewGroup.LayoutParams.WRAP_CONTENT,95);

lp_1.addRule(RelativeLayout.LEFT_OF,currButton.getId()); //LEFT_OF  将控件的右边缘和currButton的左边缘对齐

lp_1.addRule(RelativeLayout.CENTER_VERTICAL,currButton.getId());  //将控件置于垂直方向的中心位置

//将控件添加到布局中

r1.addView(temp,lp_1);

}});

you.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View arg0) {

// TODO Auto-generated method stub

EditText temp = new EditText(MainActivity.this);

temp.setText(R.string.shuoming);

//设置控件位置

RelativeLayout.LayoutParams lp_1 = 

new RelativeLayout.LayoutParams(

ViewGroup.LayoutParams.WRAP_CONTENT,95);

lp_1.addRule(RelativeLayout.RIGHT_OF,currButton.getId()); //RIGHT_OF  将控件的左边缘和currButton的右边缘对齐

lp_1.addRule(RelativeLayout.CENTER_VERTICAL,currButton.getId());  //将控件置于垂直方向的中心位置

//将控件添加到布局中

r1.addView(temp,lp_1);

}});

}


}



效果图:

更多相关文章

  1. Android(安卓)相对布局属性
  2. Android相对布局属性全集
  3. Android学习-常见的UI控件 TextView、EditText和ImageView
  4. android 学习备忘录1
  5. android 布局居中
  6. Android(安卓)布局属性详解
  7. AndroidUI组件之ListView小技巧
  8. android(LinearLayout)属性详解
  9. Android(安卓)相对布局常用属性

随机推荐

  1. Android编译系统简要介绍和学习计划
  2. Android(安卓)网络通信——Volley
  3. android如何支持多屏幕
  4. 《Android 开发工程师面试指南》
  5. 分享两种最简单的Android打渠道包的方法
  6. 如何监控android的流量信息
  7. Android 程序适应多种多分辨率
  8. Android IPC原理分析小结
  9. Android java与html js交互 html视频播放
  10. android的图形系统