获取放大区域坐标

时间:2016-08-08 06:15:44

标签: android imageview

我得到了一个ImageView,它有一些手势识别器:平移,缩放等等。用户正在缩放图像的某个区域。当他按下按钮时,我想向父ImageView插入一个视图(例如一个圆圈)。

我想知道如何在放大ImageView的某个区域后获得区域的中心坐标或获得表示缩放图像的矩形。我可以很容易地得到MotionEvent事件,但我无法弄清楚如何检测放大区域的新坐标。谢谢。

3 个答案:

答案 0 :(得分:0)

那,你正在寻找的是" Crop"。有很多库可以裁剪图像。选择其中一个,或检查他们如何解决您的问题。 There您可以找到一些裁剪库。

答案 1 :(得分:0)

您可以使用PhotoView。有一个属性setOnMatrixChangeListener将返回更改的坐标。 如果您已经在使用任何其他库,则必须有一些可用的属性。如果您告诉库,可以检查属性

答案 2 :(得分:0)

这是HackyViewPager代码 公共类HackyViewPager扩展了ViewPager {

private Context cont;  

启用了私有布尔值;

public HackyViewPager(Context context) {
    super(context);
    isLocked = false;
    cont=context;

}

public HackyViewPager(Context context, AttributeSet attrs) {
    super(context, attrs);
    cont=context;

    this.enabled = true;
}

@Override
public boolean onTouchEvent(MotionEvent event) {
    if (this.enabled) {
        return super.onTouchEvent(event);
    }

    return false;
}

@Override
public boolean onInterceptTouchEvent(MotionEvent event) {
    try {
        if (this.enabled) {
            return super.onInterceptTouchEvent(event);
        } else {
            return false;
        }
    } catch (IllegalArgumentException e) {
        e.printStackTrace();
        return false;
    }
}

public void setPagingEnabled(boolean enabled) {
    this.enabled = enabled;
}

}