参考网址:https://blog.youkuaiyun.com/zqurapig/article/details/83414389
https://blog.youkuaiyun.com/u010648159/article/details/80854797
public class ScaleGestureDemoView extends View {
private static final String TAG = "ScaleGestureDemoView";
private ScaleGestureDetector mScaleGestureDetector;
public ScaleGestureDemoView(Context context) {
super(context);
}
public ScaleGestureDemoView(Context context, @Nullable AttributeSet attrs) {
super(context, attrs);
initScaleGestureDetector();
}
private void initScaleGestureDetector() {
mScaleGestureDetector = new ScaleGestureDetector(getContext(), new ScaleGestureDetector.SimpleOnScaleGestureListener() {
@Override
public boolean onScaleBegin(ScaleGestureDetector detector) {
return true;
}
@Override
public boolean onScale(ScaleGestureDetector detector) {
Log.i(TAG, "focusX = " + detector.getFocusX()); // 缩放中心,x坐标
Log.i(TAG, "focusY = " + detector.getFocusY()); // 缩放中心y坐标
Log.i(TAG, "scale = " + detector.getScaleFactor()); // 缩放因子
return true;
}
@Override
public void onScaleEnd(ScaleGestureDetector detector) {
}
});
}
@Override
public boolean onTouchEvent(MotionEvent event) {
mScaleGestureDetector.onTouchEvent(event);
return true;
}
}
本文详细介绍了一个基于Android平台的手势缩放示例代码。通过使用ScaleGestureDetector类,可以捕捉用户双指缩放手势,并在Log中打印缩放中心坐标及缩放因子。此示例适用于希望为应用增加手势交互功能的开发者。
480

被折叠的 条评论
为什么被折叠?



