1.异常模式代码和效果图
image.png<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/clTop"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/tv1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:gravity="center"
android:minHeight="38dp"
android:textColor="@color/gray_444444"
android:textSize="14sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/vLine1"
app:layout_constraintHorizontal_weight="1.1"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:text="tv1" />
<View
android:id="@+id/vLine1"
android:layout_width="0.5dp"
android:layout_height="0dp"
android:background="#E2E4EC"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/tv2"
app:layout_constraintStart_toEndOf="@id/tv1"
app:layout_constraintTop_toTopOf="parent"
tools:background="@color/red" />
<TextView
android:id="@+id/tv2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:gravity="center"
android:minHeight="38dp"
android:textColor="@color/gray_444444"
android:textSize="14sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/vLine2"
app:layout_constraintHorizontal_weight="1.1"
app:layout_constraintStart_toEndOf="@id/vLine1"
app:layout_constraintTop_toTopOf="parent"
tools:text="tv2" />
<View
android:id="@+id/vLine2"
android:layout_width="0.5dp"
android:layout_height="0dp"
android:background="#E2E4EC"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/tv3"
app:layout_constraintStart_toEndOf="@id/tv2"
app:layout_constraintTop_toTopOf="parent"
tools:background="@color/red" />
<TextView
android:id="@+id/tv3"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:gravity="center"
android:minHeight="38dp"
android:textColor="@color/gray_444444"
android:textSize="14sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/vLine3"
app:layout_constraintHorizontal_weight="3"
app:layout_constraintStart_toEndOf="@id/vLine2"
app:layout_constraintTop_toTopOf="parent"
tools:text="tv3" />
<View
android:id="@+id/vLine3"
android:layout_width="0.5dp"
android:layout_height="0dp"
android:background="#E2E4EC"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/tv4"
app:layout_constraintStart_toEndOf="@id/tv3"
app:layout_constraintTop_toTopOf="parent"
tools:background="@color/red" />
<TextView
android:id="@+id/tv4"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:gravity="center"
android:minHeight="38dp"
android:textColor="@color/gray_444444"
android:textSize="14sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_weight="1.1"
app:layout_constraintStart_toEndOf="@id/vLine3"
app:layout_constraintTop_toTopOf="parent"
tools:text="tv4tv4tv4tv4tv4tv4tv4tv4tv4tv4" />
</androidx.constraintlayout.widget.ConstraintLayout>
<View
android:layout_width="match_parent"
android:layout_height="0.5dp"
android:background="@color/c_E2E4EC"
app:layout_constraintTop_toBottomOf="@id/clTop"
tools:background="@color/red" />
</LinearLayout>
2.正常模式代码和效果图
image.png<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.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="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/clTop"
android:layout_width="0dp"
android:layout_height="wrap_content"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/tv1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:gravity="center"
android:minHeight="38dp"
android:textColor="@color/gray_444444"
android:textSize="14sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/vLine1"
app:layout_constraintHorizontal_weight="1.1"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:text="tv1" />
<View
android:id="@+id/vLine1"
android:layout_width="0.5dp"
android:layout_height="0dp"
android:background="#E2E4EC"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/tv2"
app:layout_constraintStart_toEndOf="@id/tv1"
app:layout_constraintTop_toTopOf="parent"
tools:background="@color/red" />
<TextView
android:id="@+id/tv2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:gravity="center"
android:minHeight="38dp"
android:textColor="@color/gray_444444"
android:textSize="14sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/vLine2"
app:layout_constraintHorizontal_weight="1.1"
app:layout_constraintStart_toEndOf="@id/vLine1"
app:layout_constraintTop_toTopOf="parent"
tools:text="tv2" />
<View
android:id="@+id/vLine2"
android:layout_width="0.5dp"
android:layout_height="0dp"
android:background="#E2E4EC"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/tv3"
app:layout_constraintStart_toEndOf="@id/tv2"
app:layout_constraintTop_toTopOf="parent"
tools:background="@color/red" />
<TextView
android:id="@+id/tv3"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:gravity="center"
android:minHeight="38dp"
android:textColor="@color/gray_444444"
android:textSize="14sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/vLine3"
app:layout_constraintHorizontal_weight="3"
app:layout_constraintStart_toEndOf="@id/vLine2"
app:layout_constraintTop_toTopOf="parent"
tools:text="tv3" />
<View
android:id="@+id/vLine3"
android:layout_width="0.5dp"
android:layout_height="0dp"
android:background="#E2E4EC"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/tv4"
app:layout_constraintStart_toEndOf="@id/tv3"
app:layout_constraintTop_toTopOf="parent"
tools:background="@color/red" />
<TextView
android:id="@+id/tv4"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:gravity="center"
android:minHeight="38dp"
android:textColor="@color/gray_444444"
android:textSize="14sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_weight="1.1"
app:layout_constraintStart_toEndOf="@id/vLine3"
app:layout_constraintTop_toTopOf="parent"
tools:text="tv4tv4tv4tv4tv4tv4tv4tv4tv4tv4" />
</androidx.constraintlayout.widget.ConstraintLayout>
<View
android:layout_width="match_parent"
android:layout_height="0.5dp"
android:background="@color/c_E2E4EC"
app:layout_constraintTop_toBottomOf="@id/clTop"
tools:background="@color/red" />
</androidx.constraintlayout.widget.ConstraintLayout>
3.问题说明
原本想整个Item按照内容高度自适应,但是在LinearLayout嵌套ConstraintLayout时会出现无法按照自己想要的高度适配,但是改为ConstraintLayout嵌套ConstraintLayout后就好了,原理暂时没有深究,只是发现这样可以解决
网友评论