package com.zhengyang.ballmovedemo;
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;
/**
* Created by h on 2016-6-8.
*/
public class BallView extends View {
private float currentX=40;
private float currentY=50;
private Paint p;
private double rate;
public BallView(Context context) {
super(context);
}
public BallView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public BallView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
//创建画笔
p = new Paint();
//设置画笔颜色
p.setColor(Color.GREEN);
//绘制一个小圆作为小球
canvas.drawCircle(currentX,currentY,20, p);
}
/*触摸监听*/
@Override
public boolean onTouchEvent(MotionEvent event) {
//将currentX和currentY设置为当前点触摸点的x、y坐标
currentX=event.getX();
currentY=event.getY();
//通知当前组件重绘自己
invalidate();
//返回true表示,由当前处理该事件
return true;
}
}
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;
/**
* Created by h on 2016-6-8.
*/
public class BallView extends View {
private float currentX=40;
private float currentY=50;
private Paint p;
private double rate;
public BallView(Context context) {
super(context);
}
public BallView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public BallView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
//创建画笔
p = new Paint();
//设置画笔颜色
p.setColor(Color.GREEN);
//绘制一个小圆作为小球
canvas.drawCircle(currentX,currentY,20, p);
}
/*触摸监听*/
@Override
public boolean onTouchEvent(MotionEvent event) {
//将currentX和currentY设置为当前点触摸点的x、y坐标
currentX=event.getX();
currentY=event.getY();
//通知当前组件重绘自己
invalidate();
//返回true表示,由当前处理该事件
return true;
}
}