Android 约束布局-文本视图在尺寸增大时与其他视图重叠
上图显示了我希望视图的外观。 问题是,当“上重力”(upper gravity)文本的大小增加时,它会将图像推出视图。我试着使用屏障,但没能成功。 下图显示了我在实现这一目标方面所取得的进展。但现在的问题是,图像总是停留在最后。但我希望它就在重力文本旁边,当重力文本增加时,它应该粘在末尾,重力文本的高度应该增加Android 约束布局-文本视图在尺寸增大时与其他视图重叠,android,android-constraintlayout,Android,Android Constraintlayout,上图显示了我希望视图的外观。 问题是,当“上重力”(upper gravity)文本的大小增加时,它会将图像推出视图。我试着使用屏障,但没能成功。 下图显示了我在实现这一目标方面所取得的进展。但现在的问题是,图像总是停留在最后。但我希望它就在重力文本旁边,当重力文本增加时,它应该粘在末尾,重力文本的高度应该增加 试试这个方法, 1.在卡视图的约束布局中,添加一个方向为水平的线性布局。 2.在该水平视图中,添加标题,标题的宽度和高度作为环绕上下文。 然后添加图像视图和数字文本视图。 3.在该线
试试这个方法,1.在卡视图的约束布局中,添加一个方向为水平的线性布局。
2.在该水平视图中,添加标题,标题的宽度和高度作为环绕上下文。
然后添加图像视图和数字文本视图。
3.在该线性布局下设置详细信息文本视图。
完成。您可以将
title\u tv
(使用wrap\u content
width)、imageView4
和user\u count\u tv
放在一个水平链中,使用packed
样式和0
的偏差,使它们向左对齐。当title\u tv
展开时,您需要使用app:layout\u constrained width=“true”
防止它将其他视图推到边界之外。这就是约束的外观:
<?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:id="@+id/constraintLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v7.widget.CardView
android:layout_width="0dp"
android:layout_height="wrap_content"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<android.support.constraint.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="4dp">
<TextView
android:id="@+id/last_msg_tv"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:textAlignment="viewStart"
android:textSize="12sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="@id/title_tv"
app:layout_constraintTop_toBottomOf="@id/title_tv"
tools:text="In the future, Earth is slowly becoming uninhabitable. Ex-NASA pilot Cooper, along with a team of researchers, is sent on a planet exploration mission to report which planet can sustain life." />
<TextView
android:id="@+id/title_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="8dp"
android:textSize="16sp"
android:textStyle="bold"
app:layout_constraintHorizontal_bias="0"
app:layout_constraintHorizontal_chainStyle="packed"
app:layout_constrainedWidth="true"
app:layout_constraintEnd_toStartOf="@id/imageView4"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:text="Alpha CapriA" />
<ImageView
android:id="@+id/imageView4"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_marginEnd="8dp"
app:layout_constraintEnd_toStartOf="@id/user_count_tv"
app:layout_constraintStart_toEndOf="@id/title_tv"
app:layout_constraintTop_toTopOf="@id/title_tv"
app:srcCompat="@android:drawable/btn_star" />
<TextView
android:id="@+id/user_count_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="8dp"
app:layout_constraintBottom_toBottomOf="@id/imageView4"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/imageView4"
app:layout_constraintTop_toTopOf="@+id/imageView4"
tools:text="1000" />
</android.support.constraint.ConstraintLayout>
</android.support.v7.widget.CardView>
</android.support.constraint.ConstraintLayout>
标题更长:
我必须严格使用约束布局,不使用线性或相对视图。将这两个变量相加会破坏使用约束的目的。
<?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:id="@+id/constraintLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v7.widget.CardView
android:layout_width="0dp"
android:layout_height="wrap_content"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<android.support.constraint.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="4dp">
<TextView
android:id="@+id/last_msg_tv"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:textAlignment="viewStart"
android:textSize="12sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="@id/title_tv"
app:layout_constraintTop_toBottomOf="@id/title_tv"
tools:text="In the future, Earth is slowly becoming uninhabitable. Ex-NASA pilot Cooper, along with a team of researchers, is sent on a planet exploration mission to report which planet can sustain life." />
<TextView
android:id="@+id/title_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="8dp"
android:textSize="16sp"
android:textStyle="bold"
app:layout_constraintHorizontal_bias="0"
app:layout_constraintHorizontal_chainStyle="packed"
app:layout_constrainedWidth="true"
app:layout_constraintEnd_toStartOf="@id/imageView4"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:text="Alpha CapriA" />
<ImageView
android:id="@+id/imageView4"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_marginEnd="8dp"
app:layout_constraintEnd_toStartOf="@id/user_count_tv"
app:layout_constraintStart_toEndOf="@id/title_tv"
app:layout_constraintTop_toTopOf="@id/title_tv"
app:srcCompat="@android:drawable/btn_star" />
<TextView
android:id="@+id/user_count_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="8dp"
app:layout_constraintBottom_toBottomOf="@id/imageView4"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/imageView4"
app:layout_constraintTop_toTopOf="@+id/imageView4"
tools:text="1000" />
</android.support.constraint.ConstraintLayout>
</android.support.v7.widget.CardView>
</android.support.constraint.ConstraintLayout>