我有一个 ImageView
,它显示了一个 png,有一个更大的长宽比的设备(垂直说-意味着它的长度)。我想显示这一点,同时保持纵横比,匹配的父宽度,并钉在屏幕的顶部的图像视图。
我使用 CENTER_CROP
作为缩放类型的问题是,它将(可以理解)中心缩放的图像,而不是对齐顶部边缘的图像视图的顶部边缘。
FIT_START
的问题是,图像将适合屏幕高度,而不是填充宽度。
我已经解决了这个问题,使用自定义 ImageView 和覆盖 onDraw(Canvas)
,并使用画布手动处理这个问题; 这种方法的问题是: 1)我担心可能有一个更简单的解决方案,2)我得到了一个 VM mem 异常时,调用 super(AttributeSet)
的构造函数时,试图设置一个330kb 的 src img 时,堆有3mb 的空闲(堆大小为6 mb) ,不能找出原因。
欢迎提出任何意见/建议/解决方案:)
谢谢
附注: 我认为一个解决方案可能是使用矩阵缩放类型,并自己做,但这似乎是相同的,或更多的工作比我目前的解决方案!