我正在使用Android Studio,我注意到获取触摸的坐标会返回浮点数据类型。我总是看到屏幕坐标表示为int,这在你看像素时是有意义的。 android会以某种方式划分它们,还是我们使用一些标准的像素组作为单位?也许代表普通手指的宽度?
答案 0 :(得分:0)
我认为这也是允许MotionEvent
支持操纵杆。 p>
来自documentation of MotionEvent / DeviceTypes
在具有源类SOURCE_CLASS_JOYSTICK的操纵杆设备上,指针坐标指定操纵杆轴的绝对位置。操纵杆轴值标准化为-1.0至1.0的范围,其中0.0对应于中心位置。可以使用getMotionRange(int)获得有关可用轴集和运动范围的更多信息。一些常见的操纵杆轴是AXIS_X,AXIS_Y,AXIS_HAT_X,AXIS_HAT_Y,AXIS_Z和AXIS_RZ。
如果getX()
和getY()
返回整数,则意味着对于操纵杆设备,返回值将限制为-1,0和1。
答案 1 :(得分:0)
我测试了这个,即使1个像素也可以分为android。你可以创建一个自定义视图,用浮点坐标绘制一个矩形,并将它与另一个矩形进行比较,只需使用int类型坐标,它就会有所不同。它会告诉差异不到1个像素。