我有一个播放器屏幕,我想在其中将音频文件提供的插图显示为正方形。大多数文件都提供方形图稿,但有些文件会提供矩形图稿。在这种情况下,我要使用图像的整个高度,并“放大”,从而丢失左右两侧的一些信息,但能够以正方形显示它。现在我没有这样做。另外,如果提供垂直矩形,我希望它也能正常工作]
我是Constraintlayout的新手,请尝试以下操作,但这不起作用
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ImageView
android:id="@+id/thumbnail"
android:layout_width="match_parent"
android:layout_height="0dp"
app:layout_constraintDimensionRatio="1:1"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
android:gravity="center"
android:filter="true"
android:padding="20dp"
android:elevation="1dp"
android:scaleType="centerCrop" />
</androidx.constraintlayout.widget.ConstraintLayout>
关于实现此目标的任何想法?
您可以将android:scaleType="centerCrop"
替换为android:scaleType="fitXY"
以更改图像的默认格式和比例
摘自文档:
使用Matrix.ScaleToFit#FILL缩放图像
<ImageView
android:id="@+id/thumbnail"
android:layout_width="match_parent"
android:layout_height="0dp"
android:src="@drawable/image"
app:layout_constraintDimensionRatio="1:1"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
android:gravity="center"
android:filter="true"
android:elevation="1dp"
android:scaleType="fitXY" />