首先需要引入我们的ConstraintLayout,在build.gradle中加入:
compile 'com.android.support.constraint:constraint-layout:1.0.2'
ConstraintLayout 布局属性
ConstraintLayout 中的 Constraint 为名词(翻译为:约束;限制;强制),所以顾名思义该布局在每个在子 View 上添加各种约束条件来控制每个子 View 所处的位置以及显示的尺寸。ConstraintLayout 在 1.0 版本有如下 54 个布局属性:
android_maxHeight
android_maxWidth
android_minHeight
android_minWidth
android_orientation
layout_constraintBaseline_creator
layout_constraintBaseline_toBaselineOf
layout_constraintBottom_creator
layout_constraintBottom_toBottomOf
layout_constraintBottom_toTopOf
layout_constraintDimensionRatio
layout_constraintEnd_toEndOf
layout_constraintEnd_toStartOf
layout_constraintGuide_begin
layout_constraintGuide_end
layout_constraintGuide_percent
layout_constraintHeight_default
layout_constraintHeight_max
layout_constraintHeight_min
layout_constraintHorizontal_bias
layout_constraintHorizontal_chainStyle
layout_constraintHorizontal_weight
layout_constraintLeft_creator
layout_constraintLeft_toLeftOf
layout_constraintLeft_toRightOf
layout_constraintRight_creator
layout_constraintRight_toLeftOf
layout_constraintRight_toRightOf
layout_constraintStart_toEndOf
layout_constraintStart_toStartOf
layout_constraintTop_creator
layout_constraintTop_toBottomOf
layout_constraintTop_toTopOf
layout_constraintVertical_bias
layout_constraintVertical_chainStyle
layout_constraintVertical_weight
layout_constraintWidth_default
layout_constraintWidth_max
layout_constraintWidth_min
layout_editor_absoluteX
layout_editor_absoluteY
layout_goneMarginBottom
layout_goneMarginEnd
layout_goneMarginLeft
layout_goneMarginRight
layout_goneMarginStart
layout_goneMarginTop
layout_optimizationLevel
layout_marginStart
layout_marginEnd
layout_marginLeft
layout_marginTop
layout_marginRight
layout_marginBottom
各个属性看名称应该就会用了,不在详细介绍。
我学习时参看的四篇文章
我主要想记录的是两个view交错叠加是的效果,类似效果
我的思路是多加一个view作为过渡
语言表达不太好,直接上代码
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView14"
android:layout_width="0dp"
android:layout_height="0dp"
android:background="#880000ff"
app:layout_constraintDimensionRatio="25:9"
android:text="TextView"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/textView15"
android:layout_width="0dp"
android:layout_height="1dp"
android:layout_marginBottom="25dp"
app:layout_constraintBottom_toBottomOf="@+id/textView14"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintStart_toStartOf="parent" />
<RatingBar
android:id="@+id/ratingBar"
android:layout_width="50dp"
android:layout_height="50dp"
android:numStars="1"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textView15" />
</android.support.constraint.ConstraintLayout>