📌  相关文章
📜  Android中的ConstraintLayout

📅  最后修改于: 2021-05-09 16:30:39             🧑  作者: Mango

ConstraintLayout与我们在Android中看到的其他视图组类似,例如RelativeLayout,LinearLayout等。在本文中,我们将介绍如何在Android中使用ConstraintLayout。

ConstraintLayout的重要属性

Attributes

Description

android:id  This is used to give a unique id to the layout. 
app:layout_constraintBottom_toBottomOf This is used to constrain the view with respect to the bottom position.
app:layout_constraintLeft_toLeftOf This attribute is used to constrain the view with respect to the left position.
app:layout_constraintRight_toRightOf This attribute is used to constrain the view with respect to the right position. 
app:layout_constraintTop_toTopOf This attribute is used to constrain the view with respect to the top position.

在Android中使用ConstraintLayout的优势

  • ConstraintLayout使您能够通过Android Studio设计编辑器提供的拖放功能完全设计UI。
  • 与其他布局相比,它有助于提高UI性能。
  • 借助ConstraintLayout,我们可以通过单行代码控制小部件组。
  • 借助ConstraintLayout,我们可以轻松地将动画添加到我们在应用程序中使用的UI组件。

使用ConstraintLayout的缺点

  • 当我们在应用程序中使用约束布局时,生成的XML代码变得有点难以理解。
  • 在大多数情况下,获得的结果将与我们在设计编辑器中看到的结果不同。
  • 有时我们必须创建一个单独的布局文件来处理横向模式的UI。

ConstraintLayout与Linear Layout有何不同?

  • 借助ConstraintLayout,我们可以以任何顺序放置UI组件,无论它是水平的还是垂直的。但是在线性布局的情况下,我们只能以水平或垂直方式排列UI组件。
  • 线性布局提供了可用性,我们可以使用权重总和在水平或垂直方式上平均划分所有UI组件,但在“约束布局”中,我们必须手动布置此UI组件。
  • 在线性布局中,Android Studio设计编辑器中实际显示的UI与我们在应用程序中看到的UI相同,但是在约束布局的情况下,如果UI组件不受约束,则UI不会外观与设计编辑器中的外观相同。

ConstraintLayout与RelativeLayout有何不同?

  • 在“约束布局”中,我们必须向视图的所有四个侧面添加约束,而在“相对布局”中,我们可以简单地使用UI组件的ID将UI组件相对于其ID对齐。
  • 在相对布局中,在Android Studio的设计编辑器中实际看到的UI与我们在应用程序中看到的UI相同,但是在约束布局的情况下,如果UI组件不受约束,则该UI将与设计编辑器中的外观不同。

约束布局与网格布局有何不同?

  • 在Grid Layout中,UI组件仅以Grid Manner的形式排列,我们不能根据要求排列UI组件,而在Constraint Layout中,我们可以根据要求对齐UI组件。
  • 在Grid Layout中,实际上会在Android Studio的Design编辑器中看到的UI与我们在应用程序中看到的UI相同,但是在Constraint布局的情况下,如果UI组件不受约束,则UI将与设计编辑器中的外观不同。

在Android中添加约束布局的分步实现

步骤1:创建一个新项目

要在Android Studio中创建新项目,请参阅如何在Android Studio中创建/启动新项目。请注意,选择Java作为编程语言。

第2步:添加依赖项以在Android中使用约束布局

导航至应用程序> Gradle脚本> build.gradle文件,然后在“依赖项”部分中将以下依赖项添加到该文件中。

implementation 'androidx.constraintlayout:constraintlayout:2.0.4'

现在同步您的项目,我们将朝着使用activity_main.xml的方向发展

步骤3:使用activity_main.xml文件

导航到应用程序> res>布局> activity_main.xml,然后将以下代码添加到该文件中。以下是activity_main.xml文件的代码。

XML


  
    
  


由于我们仅使用布局文件,因此不必为MainActivity在Java或Kotllin文件中添加任何代码。添加此代码后,我们现在必须运行该应用程序以查看该应用程序的输出。

输出:

想要一个节奏更快,更具竞争性的环境来学习Android的基础知识吗?
单击此处前往由我们的专家精心策划的指南,以使您立即做好行业准备!