gpt4 book ai didi

android - SimpleOnScaleGestureListener 只接收 onScaleBegin 事件

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:38:47 26 4
gpt4 key购买 nike

我正在尝试实现一个 onscalegesturelistener。我的问题是,SimpleOnScaleGestureListener 只接收 onScaleBegin 事件。其他事件没有被报道。我正在使用 Nexus One 进行测试

public class ZoomHandler extends SimpleOnScaleGestureListener {

public float zoom;

public ZoomHandler(float zm) {
this.zoom = zm;
}

public boolean onScale(ScaleGestureDetector arg0) {
Log.i("SCALE", "onscale " + arg0.getScaleFactor());
this.zoom *= arg0.getScaleFactor();

// Don't let the object get too small or too large.
this.zoom = Math.max(0.1f, Math.min(this.zoom, 5.0f));

return true;
}

@Override
public boolean onScaleBegin(ScaleGestureDetector arg0) {
Log.i("SCALE", "onscalebegin " + arg0.getScaleFactor());
return false;
}

@Override
public void onScaleEnd(ScaleGestureDetector arg0) {
Log.i("SCALE", "onscaleend " + arg0.getScaleFactor());
}

}

在 Activity 中我这样做:

....

mScaleDetector = new ScaleGestureDetector(this , new ZoomHandler(this.zoom));

@Override
public boolean onTouchEvent(MotionEvent event) {
this.mScaleDetector.onTouchEvent(event);
.....
}
....

非常感谢

最佳答案

onScaleBegin() 和 onScale() 的返回值控制是否继续序列。如果 onScaleBegin() 像您一样返回 false,则其他任何一个都不会运行。

关于android - SimpleOnScaleGestureListener 只接收 onScaleBegin 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7689885/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com