溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Android 界面布局之RelativeLayout

發(fā)布時間:2020-06-04 09:38:55 來源:網(wǎng)絡(luò) 閱讀:293 作者:taiyi928 欄目:移動開發(fā)


Android 的 RelaliveLayout 布局的參數(shù)定義:


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"  --將控件置于垂直方向的中心位置



編程實例:


Android  界面布局之RelativeLayout


定義布局 activity_main.xml


<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:id="@+id/r1"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    android:background="#edab4a" >


    <Button

        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" />


    <Button

        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" />


    <Button

        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" />


    <Button

        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" />


    <ImageButton

        android:contentDescription="@string/wutu"

        android:id="@+id/Start"

        android:layout_width="60dip"

        android:layout_height="100dip"

        android:layout_centerInParent="true"

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


</RelativeLayout>


字符串資源 sring.xml


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

<resources>


    <string name="app_name">RelativeLayout</string>

    <string name="action_settings">Settings</string>

    <string name="hello_world">Hello world!</string>

    <string name="shang">上</string>

    <string name="xia">下</string>

    <string name="zuo">左</string>

    <string name="you">右</string>

    <string name="wutu">無圖</string>

    <string name="shuoming">圖片說明</string>


</resources>


主活動  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);

//設(shè)置控件位置

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);

//設(shè)置控件位置

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);

//設(shè)置控件位置

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);

//設(shè)置控件位置

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);

}});

}


}



效果圖:

Android  界面布局之RelativeLayout

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI