當(dāng)前位置: 首頁圖形圖像 圖像處理 → ImageView的Matrix如何獲得當(dāng)前縮放圖片的位置

ImageView的Matrix如何獲得當(dāng)前縮放圖片的位置

更多

  ImageView通過SetImageMatrix進(jìn)行圖片縮放屢見不鮮。但是如何獲得當(dāng)前縮放圖片的位置信息呢?

  用ImageState存儲圖片繪制信息:

  public class SubwayMapState { private float left; private float top; private float right; private float bottom; }

  然后獲取ImageView的matrix,根據(jù)matrix的getValues獲得3x3矩陣。

  Matrix matrix = mImageViewMap.getImageMatrix(); Rect rect = mImageViewMap.getDrawable().getBounds(); float[] values = new float[9]; matrix.getValues(values); ImageState mapState = new ImageState(); mapState.setLeft(values[2]); mapState.setTop(values[5]); mapState.setRight(mapState.getLeft() + rect.width() * values[0]); mapState.setBottom(mapState.getTop() + rect.height() * values[0]);

  這樣,mapState中存放的是mImageViewMap中的圖片四個邊的值。

  通過ImageState可以計算點擊ImageView對應(yīng)圖片的像素點!

熱門評論
最新評論
發(fā)表評論 查看所有評論(0)
昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
字?jǐn)?shù): 0/500 (您的評論需要經(jīng)過審核才能顯示)