- 引入:
之前对Android讲义的一个小项目——–随指尖移动的小球进行修改,利用View中的invalidate()方法实现每次触碰屏幕更新(UI线程)小球的位置并且附加判断大小,实现触碰更新小球大小随之更改颜色.
API引入:
每次执行invalidate()方法都会调用ondraw()
ondraw()用于刷新界面此处为canvas(画布)
2. 简单源码:
变色小球1.0
新建一个DrawView类继承View
package com.example.drawview_without_thread;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
import android.widget.Button;
public class DrawView extends View{
public float currentX = 200; //球起始位置
public float currentY = 500;
// String touchsign = "Never touch";
boolean range = true; //大小判断标记
Paint p = new Paint(); //画笔
public DrawView(Context context) { //构造函数1 直接定义视图 //final DrawView draw = new DrawView(this);
super(context);
}
public DrawView(Context context,AttributeSet set) { //构造函数2 传入AttributeSet set在布局文件xml中加载属性