无明显原因的 ImageView 缩放

ImageView Scaling for No Apparent Reason

我正在使用 Android Studio,并在 activity_mail.xml 中创建了一个 ImageView。布局宽度和高度设置为“match_parent”。 scaleType 设置为“center”,源图像为 70x70 像素。当我 运行 模拟器中的应用程序时,图像出现在屏幕上大于 70x70 像素。我的意思是它在 phone 的屏幕上占用了超过 70x70 像素。我不知道为什么要这样做。该应用程序仅处于横向模式,这可能是相关的。如果我包含了无关的细节,请原谅我,我真的不知道包含哪些相关信息。我打算使图像在 phone 的屏幕上占据 70x70 像素。是什么导致了意外结果,我该如何解决?

更改 ScaleType,也许 fit_center 而不是 center + android:adjustViewBounds="true” 将适合您的目的...另一种方法是创建 ImageView wrap_content 尺寸的容器(例如 RelativeLayout)和 match_parent 尺寸的容器(例如 RelativeLayout

还要检查此 visual guide 是否有 ScaleType

请注意,70 像素的图像在具有高清分辨率的设备上会很大,而在具有高清分辨率的设备上会小得多。全高清。你应该在适当的密度桶(mdpihdpi 等)中有几个版本的图像,或者如果你的图像来自某些 API,则只下载适当的大小,这样你就可以说您的图像尺寸为 70dp,而不是 70px