ConstraintLayout的孩子的边距不显示?

时间:2016-12-28 01:35:35

标签: android android-constraintlayout

我正在为我的应用程序使用Android的新ConstraintLayout,而且我一直遇到有元素边缘显示的问题。作为参考,我在Gradle文件中使用ConstraintLayout com.android.support.constraint:constraint-layout:1.0.0-beta4中的以下行。我的布局中的代码如下所示。

<android.support.constraint.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:paddingStart="@dimen/activity_horizontal_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/post_vertical_padding"
    android:paddingEnd="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingBottom="@dimen/post_vertical_padding"
    android:background="?android:attr/selectableItemBackground">

    <TextView
        style="@style/TitleText"
        android:id="@+id/post_type"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="@dimen/post_line_vertical_padding"
        android:layout_marginEnd="@dimen/post_type_horizontal_padding"
        android:layout_marginRight="@dimen/post_type_horizontal_padding"
        app:layout_constraintLeft_toRightOf="@id/poster_profile_pic"
        app:layout_constraintTop_toTopOf="parent" />

    <TextView
        android:id="@+id/poster_name"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintLeft_toRightOf="@id/post_type"
        app:layout_constraintBaseline_toBaselineOf="@id/post_type" />

</android.support.constraint.ConstraintLayout>

1 个答案:

答案 0 :(得分:14)

  1. 如果您使用paddingStart,则无需paddingLeft
  2. app:layout_constraintLeft_toRightOf="@id/poster_profile_pic" 此处没有带有poster_profile_pic
  3. 的图片视图
  4. android:layout_marginBottom 除非您加入constraintBottom_toBottomOf="parent"
  5. ,否则无效
  6. android:layout_marginRight应该是android:layout_marginLeftposter_name因为poster_nameapp:layout_constraintLeft_toRightOf="@id/post_type"