我使用ImageView在我的项目' assets'下显示一个jpg文件。文件夹,内在尺寸为:1280x854,我通过调用myDrawable.getIntrinsicWidth()和myDrawable.getIntrinsicHeight()来确认。
我的图像视图实现了缩放缩放,因此图像缩放到例如2倍。然后执行以下代码:
Drawable drawable = getDrawable();
Rect bounds =drawable.getBounds();
Log.i("activity", String.format("drawalbe : top:%d, left: %d, (%d, %d)", bounds.top, bounds.left, bounds.width(), bounds.height()));
无论当前比例是多少,可绘制边界总是1280x854,而左上角总是0,0。
是否应该相应地缩放界限?谁能给我一些提示?谢谢。
答案 0 :(得分:1)
这是因为this。
比例矩阵仅影响视图的绘制方式,但不会改变其尺寸。
虽然您可以创建一个与图像大小相同的矩形,并将相同的比例矩阵应用于带有Matrix.mapRect(Rect r)
的Rect,而Rect将具有缩放的尺寸。