android怎么获取触摸的位置

avatar
作者
筋斗云
阅读量:0

在Android中,您可以通过触摸事件(Touch Event)获取触摸的位置。要实现这个功能,需要重写View类的onTouchEvent()方法。以下是一个简单的示例:

  1. 首先,创建一个新的Android项目并打开主Activity文件(如 MainActivity.java)。
  2. 在MainActivity类中,重写onCreate()方法,添加一个自定义的View,并重写该View的onTouchEvent()方法。
import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.view.MotionEvent; import android.view.View; import android.widget.Toast;  public class MainActivity extends AppCompatActivity {      @Override     protected void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);                  // 创建一个自定义的View         MyTouchView touchView = new MyTouchView(this);         setContentView(touchView);     }      // 自定义的View类     public class MyTouchView extends View {          public MyTouchView(Context context) {             super(context);         }          // 重写onTouchEvent()方法         @Override         public boolean onTouchEvent(MotionEvent event) {             int action = event.getAction();             float x = event.getX();             float y = event.getY();              switch (action) {                 case MotionEvent.ACTION_DOWN:                     // 当按下屏幕时,显示触摸位置                     Toast.makeText(getApplicationContext(), "Touched at (" + x + ", " + y + ")", Toast.LENGTH_SHORT).show();                     break;                 case MotionEvent.ACTION_MOVE:                     // 当手指移动时,执行相应操作                     break;                 case MotionEvent.ACTION_UP:                     // 当手指抬起时,执行相应操作                     break;             }             return true;         }     } } 

在上面的代码中,我们创建了一个名为MyTouchView的自定义View,并重写了其onTouchEvent()方法。当用户触摸屏幕时,我们会获取触摸点的X和Y坐标,并通过Toast消息显示出来。您可以根据需要修改此方法以执行其他操作。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!