【发布时间】:2021-03-28 17:57:33
【问题描述】:
我正在尝试以可重复使用的布局显示一系列 4 个头像。我的布局test_layout.xml 如下所示:
<?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="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/img1"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:scaleType="fitStart"
android:layout_marginEnd="1dp"
android:adjustViewBounds="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/img2"
app:layout_constraintHorizontal_chainStyle="packed"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:srcCompat="@tools:sample/avatars" />
<ImageView
android:id="@+id/img2"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:scaleType="fitStart"
android:layout_marginHorizontal="1dp"
android:adjustViewBounds="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/img3"
app:layout_constraintStart_toEndOf="@+id/img1"
app:layout_constraintTop_toTopOf="parent"
tools:srcCompat="@tools:sample/avatars" />
<ImageView
android:id="@+id/img3"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:scaleType="fitStart"
android:layout_marginHorizontal="1dp"
android:adjustViewBounds="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/img4"
app:layout_constraintStart_toEndOf="@+id/img2"
app:layout_constraintTop_toTopOf="parent"
tools:srcCompat="@tools:sample/avatars" />
<ImageView
android:id="@+id/img4"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:scaleType="fitStart"
android:layout_marginStart="1dp"
android:adjustViewBounds="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/img3"
app:layout_constraintTop_toTopOf="parent"
tools:srcCompat="@tools:sample/avatars" />
</androidx.constraintlayout.widget.ConstraintLayout>
我将在多个地方重用这个布局(有时在同一个屏幕上多次),所以它需要是通过include 标签(或者可能是merge)合并的自己的布局。
当框架太宽/太短时,这种布局看起来很棒,完全符合我的预期,头像处于“打包”形式:
我怎样才能做到这一点,而不是切断图像的侧面,而是调整它们的大小,使它们都水平适合,并在顶部和底部添加空白?我对任何类型的布局持开放态度,而不仅仅是constraintlayout。谢谢!
【问题讨论】:
-
您是否尝试过使用
ScrollView? -
@Mustansir,我不希望它可滚动,我希望始终显示所有四个图像
标签: android xml android-layout user-interface