重写onTouchEvent方法响应触摸屏事件

来源:互联网 发布:金融seo是什么意思 编辑:程序博客网 时间:2024/06/06 20:09

下面的程序重写了View组件的onTouchEvent(MotionEvent event)方法,这表示该组件自己就可以处理触摸屏事件,当用户手指在屏幕上移动时,该View上绘制的小球将会跟随用户手指。

drawview.xml:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="vertical" ><org.crazyit.event.DrawView    android:orientation="vertical"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    />    </LinearLayout>


 

DrawView.xml:

package com.example.helloandroid;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.util.AttributeSet;import android.view.MotionEvent;import android.view.View;public class DrawView extends View{public float currentX=40;public float currentY=50;public DrawView(Context context, AttributeSet attrs) {super(context, attrs);// TODO Auto-generated constructor stub}public void onDraw(Canvas canvas){super.onDraw(canvas);Paint p=new Paint();p.setColor(Color.RED);canvas.drawCircle(currentX, currentY, 15, p);}public boolean onTouchEvent(MotionEvent event){this.currentX=event.getX();this.currentY=event.getY();this.invalidate();return true;}}


 

原创粉丝点击