如果你想知道如何使用的ImageView變換矩陣像ImageView的,你可以映射點可繪製coresponds到(X,Y)的(0,0),所以
float[] drawableCoords = new float[] {0, 0};
imageView.getImageMatrix().mapPoints(drawableCoords);
float onViewX = drawableCoords[0];
float onViewY = drawableCoords[1];
你也可以逆轉過程(從ImageView的映射通過在其上創建逆矩陣和馬平點
float[] viewCoords= new float[] {0, 0};
Matrix invertedMatrix = new Matrix()
imageView.getImageMatrix().invert(invertedMatrix);
invertedMatrix.mapPoints(viewCoords);
float onDrawableX= viewCoords[0];
float onDrawableY= viewCoords[1];
注意,轉化在某些情況下座標可以具有負的座標值,如果可拉伸小於/大於imageview的更大的座標繪製的座標。
不,#1是圖像視圖,但實際位圖顯示了#2所在的位置。我無法在image2上調用getLeft,因爲它是image1 ImageView的一部分。 – mtbomb