如何在ConstraintLayout中居中放置一对视图?

时间:2018-07-05 21:37:44

标签: android android-constraintlayout

如何在Views内将一对ConstraintLayout居中放置,如下所示,无嵌套?他们需要触摸,并以一个单元为中心。

enter image description here

我尝试将它们彼此锚定,并固定在其父母之间,但随后它们彼此不接触,因此我为两者都添加了水平偏差,但这没有帮助。

预先感谢...

<ImageView
    android:id="@+id/imageView"
    android:layout_width="14dp"
    android:layout_height="14dp"
    android:scaleType="fitXY"        
    android:src="@drawable/checkmark"
    app:layout_constraintHorizontal_bias="1.0"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toLeftOf="@id/textView"/>

<TextView
    android:id="@+id/textView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/some_text"
    app:layout_constraintHorizontal_bias="0.0"
    app:layout_constraintLeft_toRightOf="@id/imageView"
    app:layout_constraintRight_toRightOf="parent"/>

1 个答案:

答案 0 :(得分:6)

您需要为链的顶部设置链样式属性,该属性是水平链左侧的第一个View。将给出预期结果的样式是packed。在这种情况下,不需要偏见。

<ImageView
    android:id="@+id/imageView"
    android:layout_width="14dp"
    android:layout_height="14dp"
    android:scaleType="fitXY"
    android:src="@drawable/checkmark"
    app:layout_constraintHorizontal_chainStyle="packed"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toLeftOf="@id/textView"/>

<TextView
    android:id="@+id/textView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/some_text"
    app:layout_constraintLeft_toRightOf="@id/imageView"
    app:layout_constraintRight_toRightOf="parent"/>