安卓获取触摸屏触摸点的宽高
时间: 2024-02-06 09:09:21 浏览: 15
在安卓中,可以通过`MotionEvent`类获取触摸事件的信息,包括触摸点的坐标、压力等信息。要获取触摸点的宽高,可以使用`getTouchMajor()`和`getTouchMinor()`方法。
例如,在`onTouchEvent()`方法中,可以这样获取触摸点的宽高:
```java
@Override
public boolean onTouchEvent(MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
// 获取第一个触摸点的宽高
float width = event.getTouchMajor(0);
float height = event.getTouchMinor(0);
break;
case MotionEvent.ACTION_MOVE:
// 获取移动后第一个触摸点的宽高
float newWidth = event.getTouchMajor(0);
float newHeight = event.getTouchMinor(0);
break;
}
return super.onTouchEvent(event);
}
```
注意,`getTouchMajor()`和`getTouchMinor()`返回的是像素值,需要转换为实际尺寸。可以使用`event.getXPrecision()`和`event.getYPrecision()`方法获取每个坐标点的精度,然后将像素值乘以精度来得到实际尺寸。