多点触控两个图像视图在同一位置

时间:2017-12-08 15:28:01

标签: android imageview multi-touch

我在我的活动中使用两个图像视图,当我双击/捏缩放的那一刻我只缩放我触摸过的图像。 我怎么能同时缩放其他图像&同样的立场。

我只在一个图像视图上实现多点触控/捏合缩放。

PS:我在发帖之前进行了搜索,但无济于事。

因为代码长度我不能粘贴它。这是我使用过的相同链接:TouchImageView.java

2 个答案:

答案 0 :(得分:1)

也许你想要这样的东西:

onYourOnTouchImplementation(MotionEvent e) {
    //your implementation
    ...
    long downTime = e.getDownTime();
    long eventTime = e.getEventTime();
    int action = e.getAction();
    int x = e.getX() + (otherView.getX() - firstView.getX());
    int y = e.getY() + (otherView.getY() - firstView.getY());
    int metaState = e.getMetaState();

    MotionEvent event = MotionEvent.obtain(downTime, eventTime, action, x, y, metaState);
    otherView.dispatchTouchEvent(event);
}

所以你可以在第二个视图上传递触摸。

答案 1 :(得分:1)

在TouchImageView上添加:

TouchImageView other;
public void setOther(TouchImageView other) {
    this.other = other;
}

所以在你的activity.onCreate:

TouchImageView one = //findViewById
TouchImageView two = //findViewById
one.setOther(two);
two.setOther(one);

然后将双击的监听器添加到另一个监听器:

public boolean onDoubleTap(MotionEvent e) {    
    other.onDoubleTap(MotionEvent.obtain(e));