Android 获取imageview上的触摸事件坐标
我在ImageView上有一个onTouchListener,我使用event.getX()或getY()。 我的目标是当用户触摸我的图像的特定部分时,显示一个图像并启动一个对话框或其他东西。 问题是,在不同的屏幕上,图像视图的同一部分的X et Y值会发生变化 如何在每个屏幕上以像素为单位获取事件的真实位置?Android 获取imageview上的触摸事件坐标,android,imageview,screen,touch-event,ontouchlistener,Android,Imageview,Screen,Touch Event,Ontouchlistener,我在ImageView上有一个onTouchListener,我使用event.getX()或getY()。 我的目标是当用户触摸我的图像的特定部分时,显示一个图像并启动一个对话框或其他东西。 问题是,在不同的屏幕上,图像视图的同一部分的X et Y值会发生变化 如何在每个屏幕上以像素为单位获取事件的真实位置? 例如,我想显示一张Android人脸,当用户在他的眼睛里点击时做一些事情…编写代码,使用固定分辨率(例如480x640)在指定点检测触摸。然后使用DisplayMetrics获取应用程序
例如,我想显示一张Android人脸,当用户在他的眼睛里点击时做一些事情…编写代码,使用固定分辨率(例如480x640)在指定点检测触摸。然后使用DisplayMetrics获取应用程序正在运行的设备的分辨率。计算xScale和yScale(例如DisplayMetrics.widthPixels/480)并将x和y乘以这些比例因子。使用屏幕的当前密度值非常有效。