自定义view 小球的移动

来源:互联网 发布:网络建设方案ppt 编辑:程序博客网 时间:2024/05/06 00:23
自定义View 继承View
package com.mrli.rk03;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.support.annotation.Nullable;import android.util.AttributeSet;import android.view.MotionEvent;import android.view.View;/** * Created by MRli on 2017/11/2. */public class MyView extends View {    public int currentX = 100;    public int currentY = 100;    Context context;    //创建画笔    Paint p  = new Paint();    public MyView(Context context) {        super(context);    }    public MyView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {        super(context, attrs, defStyleAttr);    }    public MyView(Context context, @Nullable AttributeSet attrs) {        super(context, attrs);    }    @Override    protected void onDraw(Canvas canvas) {        super.onDraw(canvas);        //设置画笔的颜色        p.setColor(Color.RED);        //绘制一个小球        //参数分别是:圆心坐标,半径,所使用的画笔        canvas.drawCircle(currentX,currentY,45,p);    }    @Override    public boolean onTouchEvent(MotionEvent event) {        this.currentX = (int) event.getX(); //触摸座标X        this.currentY = (int) event.getY(); //触摸座标Y        this.invalidate();        // 自己处理触摸事件        return true;    }}

在xml文件中引入

<com.mrli.rk03.MyView        android:layout_width="wrap_content"        android:id="@+id/circle"        android:layout_height="wrap_content" />


原创粉丝点击