程序员

Android_XML布局

2019-09-27  本文已影响0人  书虫大王X

1.XML布局优点:

在XML文件中设计UI可以更好地将应用的外观与控制应用行为的代码隔离,每次修改或调整界面布局只需要修改XML文件的代码而不是修改源码和重新编译。

2.常见的XML布局:

属性 作用
orientation 控价的布局方式(有水平布局和竖直布局)
gravity 当前元素的子元素相对它的对齐方式
layout_gravity 当前元素相对它的父元素的对齐方式
  1. 简介:已经取代RelativeLayout成了创建空Activity的默认布局,非常强大。布局原理:根据布局中的其他元素或视图, 确定View在屏幕中的位置, 受到三类约束, 即其他视图, 父容器(parent), 基准线(Guideline)。
    举个例子:


    效果图

    代码:

    <TextView
        android:id="@+id/TextView1"
        ...
        android:text="TextView1" />

    <TextView
        android:id="@+id/TextView2"
        ...
        app:layout_constraintLeft_toRightOf="@+id/TextView1" />

    <TextView
        android:id="@+id/TextView3"
        ...
        app:layout_constraintTop_toBottomOf="@+id/TextView1" />
  1. group:
    可以把多个控件归为一组,便于管理,例:
    <TextView
        android:id="@+id/TextView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

    <TextView
        android:id="@+id/TextView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintLeft_toRightOf="@+id/TextView1" />

    <TextView
        android:id="@+id/TextView3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintLeft_toRightOf="@id/TextView2" />
效果图

现在有3个并排的TextView,用Group把TextView1和TextView3归为一组,再设置这组控件的可见性,如下所示:

   <android.support.constraint.Group
        android:id="@+id/group"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:visibility="invisible"
        app:constraint_referenced_ids="TextView1,TextView3" />
效果图

3.xml 配置参数:

app:layout_constraintHorizontal_weight="1"
//这个视图宽度占父视图宽度的1/n(n为子视图的个数)

layout_constraintVertical _weight 一个元素高度占父视图高度的比例

注意:这些属性的值即可以是parent,也可以是某个view的id。

4. XML布局常见属性:

XML布局常见属性
上一篇 下一篇

猜你喜欢

热点阅读