添加布局,线性布局和相对布局

4 篇文章 0 订阅

1.代码方式

编写MainActivity方法

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        //根布局设置为线性布局,新建一个LinearLayout
        LinearLayout ll = new LinearLayout(this);
        //通过setLayoutParams方法设置宽高,参数新建一个LayoutParams,内参数有两个MATCH_PARENT分别为宽和高
        ll.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
                ViewGroup.LayoutParams.MATCH_PARENT));
        //通过setBackgroundColor方法设置背景色为红色
        ll.setBackgroundColor(Color.RED);
        //指定此activity的内容视图为该线性布局
        setContentView(ll);
    }

效果
在这里插入图片描述
缺点:代码繁琐,耦合性强

2.线性布局

先在layout下新建一个layout resource file,root element 选为LinearLayout
在这里插入图片描述
布局属性:

//宽度
android:layout_height="wrap_content"
//高度
android:layout_width="match_parent"
//外边距
android:layout_margin="20dp"
//内边距
android:padding="20dp"
//字体大小
android:textSize="30sp"

值:

200dp:常用于xml
200px:和dp一样,像素单位
200sp:常用于字体

布局属性和值:

//方向
android:orientation="vertical"
"vertical":垂直的
"horizontal":水平的
//权重
android:layout_weight="1"
有权重的后摆放,使用权重请将对应的宽高属性设置为0dp(水平为宽,垂直为高)
//重力
android:layout_gravity="bottom"
//设置重力设置到哪里

2.相对布局

先在layout下新建一个layout resource file,root element 选为LinearLayout
在这里插入图片描述
位置布局属性:

//相对于父容器居中上下左右
android:layout_centerInParent="true"
android:layout_alignParentRight="true"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
//相对于父容器水平居中
android:layout_centerHorizontal="true"
//相对于父容器追至居中
android:layout_centerVertical="true"

id设置属性:

//设置相对用的id,名为center
android:id="@+id/center"

相对布局属性,在参照物的某边:

//设置在center左边
android:layout_toLeftOf="@+id/center"
//设置在center右边
android:layout_toRightOf="@+id/center"
//设置在center上面
android:layout_above="@+id/center"
//设置在center下面
android:layout_below="@+id/center"

相对布局属性,在参照物的某边线对齐:

//设置与center上边线对其
android:layout_alignTop="@+id/center"
//设置与center下边线对其
android:layout_alignBottom="@+id/center"
//设置与center右边线对其
android:layout_alignRight="@+id/center"
//设置与center左边线对其
android:layout_alignLeft="@+id/center"
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值