如何解决将ScaleType.MATRIX设置为Custom ImageView可以缩小图像的初始显示
我将要创建自己的自定义ImageView,因此我在下面创建此类。
class MyImageView @JvmOverloads constructor(
context: Context,attrs: AttributeSet? = null,defStyleAttr: Int = 0
) : AppCompatImageView(context,attrs,defStyleAttr) {
}
默认情况下(即不使用setScaleType(ScaleType.MATRIX)
),它看起来在下面(非常适合屏幕)。
因此,如果我在setScaleType(ScaleType.MATRIX)
中添加init
,它将变成如下所示。
class MyImageView @JvmOverloads constructor(
context: Context,defStyleAttr) {
init {
setScaleType(ScaleType.MATRIX)
}
}
为什么收缩?我该怎么做才能仍然使用ScaleType.MATRIX
并使其最初显示在适合屏幕的位置?
解决方法
默认情况下,Matrix比例类型将不应用任何比例类型,因此图像将被调整为原始尺寸。
在这种情况下,图像小于视图,因此缩小了。如果不指定ScaleType,它将使用FitCenter,因此会放大较小的图像以适合视图大小。
更多说明here
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。