ConstraintLayout约束布局的应用

首先需要引入我们的ConstraintLayout,在build.gradle中加入:

compile 'com.android.support.constraint:constraint-layout:1.0.2'

ConstraintLayout 布局属性

ConstraintLayout 中的 Constraint 为名词(翻译为:约束;限制;强制),所以顾名思义该布局在每个在子 View 上添加各种约束条件来控制每个子 View 所处的位置以及显示的尺寸。ConstraintLayout 在 1.0 版本有如下 54 个布局属性:

  1. android_maxHeight

  2. android_maxWidth

  3. android_minHeight

  4. android_minWidth

  5. android_orientation

  6. layout_constraintBaseline_creator

  7. layout_constraintBaseline_toBaselineOf

  8. layout_constraintBottom_creator

  9. layout_constraintBottom_toBottomOf

  10. layout_constraintBottom_toTopOf

  11. layout_constraintDimensionRatio

  12. layout_constraintEnd_toEndOf

  13. layout_constraintEnd_toStartOf

  14. layout_constraintGuide_begin

  15. layout_constraintGuide_end

  16. layout_constraintGuide_percent

  17. layout_constraintHeight_default

  18. layout_constraintHeight_max

  19. layout_constraintHeight_min

  20. layout_constraintHorizontal_bias

  21. layout_constraintHorizontal_chainStyle

  22. layout_constraintHorizontal_weight

  23. layout_constraintLeft_creator

  24. layout_constraintLeft_toLeftOf

  25. layout_constraintLeft_toRightOf

  26. layout_constraintRight_creator

  27. layout_constraintRight_toLeftOf

  28. layout_constraintRight_toRightOf

  29. layout_constraintStart_toEndOf

  30. layout_constraintStart_toStartOf

  31. layout_constraintTop_creator

  32. layout_constraintTop_toBottomOf

  33. layout_constraintTop_toTopOf

  34. layout_constraintVertical_bias

  35. layout_constraintVertical_chainStyle

  36. layout_constraintVertical_weight

  37. layout_constraintWidth_default

  38. layout_constraintWidth_max

  39. layout_constraintWidth_min

  40. layout_editor_absoluteX

  41. layout_editor_absoluteY

  42. layout_goneMarginBottom

  43. layout_goneMarginEnd

  44. layout_goneMarginLeft

  45. layout_goneMarginRight

  46. layout_goneMarginStart

  47. layout_goneMarginTop

  48. layout_optimizationLevel

  49. layout_marginStart

  50. layout_marginEnd

  51. layout_marginLeft

  52. layout_marginTop

  53. layout_marginRight

  54. layout_marginBottom

各个属性看名称应该就会用了,不在详细介绍。

我学习时参看的四篇文章

ConstraintLayout 终极秘籍(上)

ConstraintLayout之Barrier

ConstraintLayout完全解析

ConstraintLayout 完全解析--鸿洋


我主要想记录的是两个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>

仅作记录,备忘,以供以后容易查找。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值