ImageView 适合高度,自动缩放宽度,保持纵横比

Posted

技术标签:

【中文标题】ImageView 适合高度,自动缩放宽度,保持纵横比【英文标题】:ImageView to fit height, auto scale width, keep aspect ratio 【发布时间】:2016-04-01 21:23:48 【问题描述】:

我有这样的布局:

<LinearLayout
    android:layout_
    android:layout_
    android:layout_marginEnd="8dp"
    android:gravity="start|center_vertical"
    android:orientation="horizontal"
    android:layout_weight="0.25">

    <ImageView
        android:layout_
        android:layout_
        android:background="@drawable/reply_icon"
        android:scaleType="fitCenter"
        android:adjustViewBounds="true"
        />

</LinearLayout>

我正在尝试让 ImageView 适合其高度 (20dp) 并自动调整宽度(同时保持其纵横比),但是,它看起来像这样被拉伸:

我该如何解决这个问题?

【问题讨论】:

我认为你的代码还可以,你的ImageView实际上尊重它的比例。 这对我一点帮助都没有。 【参考方案1】:

将两个属性:(android:adjustViewBounds 和 android:scaleType=)添加到您的 ImageView 以保持纵横比

android:adjustViewBounds="true"
android:scaleType="centerCrop"

希望对你有所帮助

【讨论】:

我的布局中已经有adjustViewBoundscenterCrop 没有改变任何东西。

以上是关于ImageView 适合高度,自动缩放宽度,保持纵横比的主要内容,如果未能解决你的问题,请参考以下文章

ImageView 填充父母的宽度或高度,但保持纵横比

缩放位图保持纵横比

UIImageView 缩放图像问题

ImageMagick 缩放和裁剪保持纵横比

centerInside 不能将 Drawable 缩放到 ImageView

缩放 HTML5 画布宽度保留 w/h 纵横比