Constraint Layout 约束布局基础使用

Android 设备在运行,具有不同的尺寸和目标,如手机、平板电脑、电视、汽车、嵌入式硬件等,Android UI 已成为 Android 用户和开发人员非常有影响力的部分。随着构建复杂 UI 的新兴需求,google为了更好的解决适配问题,提供出来ConstraintLayout 约束布局。

为什么要约束布局?

在 Constraint Layout 之前,Android UI 是由线性布局、Frame Layout 和 RelativeLayout 等几个 View Group 创建的。在 Android 开发历史中,这些布局在创建 UI 时非常有用。嵌套是 Android 开发人员经常处理的主要问题之一——尤其是在使用上述布局时。这不仅会使布局文件变大而难以理解,而且还会影响 UI 渲染的性能。

Constraint Layout 约束布局基础使用_第1张图片

ConstraintLayout是 Android 团队新发布的 View Group,它解决了嵌套和性能等问题。这不仅可以帮助开发人员构建更复杂和更大的 UI,而且还带有扁平的层次结构。本系列文章将借助真实的 UI 示例逐步解释 ConstraintLayout 中的所有功能;

在项目中添加 ConstraintLayout

要在项目中使用 ConstraintLayout,请将库作为依赖项添加到应用级build.gradle文件中。如果您的项目已经具有依赖项,则这不是必需的。

implementation "androidx.constraintlayout:constraintlayout:$constraintVersion"

添加约束

设置依赖项后,您可以ConstraintLayout通过添加如下代码来添加:




        


        


        


        

视图和小部件(例如按钮、文本等)被添加到 ConstraintLayout 标签内,然后成为所有嵌套元素的父级。在上面的代码中,设备的屏幕作为 ConstraintLayout 的父级。

在约束布局中,每个视图有四个边,称为锚点(看下图中的圆圈),这些锚点 作为约束的源或目标操作

Constraint Layout 约束布局基础使用_第2张图片

要定义视图的位置,我们必须为其添加至少一个水平约束和一个垂直约束。要设置视图的水平垂直位置,您需要使用 ConstraintLayout 中提供的一些约束。

这些约束的编写如下图所示。请注意,Source 和 Target 是一些视图,例如按钮、复选框等。您可以使用任何其他视图的 ID 或父视图来引用这些约束。根布局的父级将是设备本身,在嵌套布局的情况下,父级将是包含该特定视图的布局。

Constraint Layout 约束布局基础使用_第3张图片

layout_constraintTop_toTopOf

这个约束告诉源视图的顶部应该与目标视图的顶部相同。如下图所示,绿色和蓝色视图的顶层位于相同的垂直位置。

Constraint Layout 约束布局基础使用_第4张图片

layout_constraintBottom_toBottomOf

这个约束告诉源视图的底部应该与目标视图的底部相同。如下图所示,绿色和蓝色视图的底层处于相同的垂直位置。

Constraint Layout 约束布局基础使用_第5张图片

layout_constraintBottom_toTopOf

这个约束告诉源视图的底部应该与目标视图的顶部相同。如下图所示,底层的绿色视图和顶层的蓝色视图处于相同的垂直位置。

Constraint Layout 约束布局基础使用_第6张图片

layout_constraintTop_toBottomOf

这个约束告诉源视图的顶部应该与目标视图的底部相同。如下图所示,顶层的绿色视图和底层的蓝色视图处于垂直位置

Constraint Layout 约束布局基础使用_第7张图片

layout_constraintStart_toStartOf

这个约束告诉源视图的开始应该与目标视图的开始相同。如下图所示,绿色和蓝色视图的起始层位于垂直位置。

Constraint Layout 约束布局基础使用_第8张图片

layout_constraintEnd_toEndOf

这个约束告诉源视图的结束应该与目标视图的结束相同。如下图所示,绿色末端层和蓝色末端层视图处于垂直位置。

Constraint Layout 约束布局基础使用_第9张图片

layout_constraintEnd_toStartOf

这个约束告诉源视图的结束应该与目标视图的开始对齐。如下图所示,绿色的结束层和蓝色视图的开始层位于垂直位置。

Constraint Layout 约束布局基础使用_第10张图片

layout_constraintStart_toEndOf

这个约束告诉源视图的开始应该与目标视图的结束对齐。如下图所示,绿色的起始层和蓝色视图的结束层位于垂直位置。

Constraint Layout 约束布局基础使用_第11张图片



    
    
    
    
    
    
        
            
            
            
            
        
        
    
    
        
        
    
    
        
    
    
        
        
        
    
    
        
    
    
    
    

Constraint Layout 约束布局基础使用_第12张图片

以上是具体实现的一个约束布局文件,主要是对几个属性的掌握,没什么难点之处,主要是多写多使用。

你可能感兴趣的:(嵌入式,android,android,studio,python,移动开发)