android view的触摸事件坐标
16lz
2021-12-04
android view的触摸事件坐标不是屏幕坐标,是相对于view左上角的坐标。
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); TextView tv = (TextView) findViewById(R.id.tv); tv.setOnTouchListener(new OnTouchListener() {public boolean onTouch(View v, MotionEvent event) {System.out.println("坐标:[x,y] = [" + event.getX() + "," + event.getY() + "]");return false;}}); }
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" > <TextView android:id="@+id/tv" android:layout_width="150dp" android:layout_height="150dp" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:background="#ff00ffff" android:gravity="center" android:text="click me" tools:context=".MainActivity" /></RelativeLayout>
04-10 23:27:10.889: I/System.out(10515): 坐标:[x,y] = [0.0,21.0]04-10 23:27:11.159: I/System.out(10515): 坐标:[x,y] = [3.0,21.0]04-10 23:27:11.369: I/System.out(10515): 坐标:[x,y] = [3.0,21.0]04-10 23:27:11.549: I/System.out(10515): 坐标:[x,y] = [9.0,18.0]04-10 23:27:11.699: I/System.out(10515): 坐标:[x,y] = [10.0,20.0]04-10 23:27:11.869: I/System.out(10515): 坐标:[x,y] = [13.0,20.0]
更多相关文章
- android bounceScrollView
- android drawBitmapMesh
- 学个明白--Android世界的坐标系
- 对于android触摸事件模型的一些理解
- Android(安卓)事件处理
- 图解 Android(安卓)动画中 android:pivotX 和 android:pivotY 属
- Error Installing APK
- android各种触摸事件的处理,touchEvent
- Google API应用