【Android】开发自定义View
1、自定义的View,相应的布局关系。

2、View的布局可以重写的方法有这些。

3、常用的方法可以重写。

4、下面是一个小例子
项目结构如下

5、自定义View类的结构

6、onDraw(Canvas canvas)
onTouchEvent(MotionEvent event)
是被重写的方法。
这个例子是 点击屏幕就画一个小圆。

7、public class DrawView extends View{ public float currentX = 40; public float currentY = 50; // 定义、并创建画笔 Paint p = new Paint(); public DrawView(Context context) { super(context); } public DrawView(Context context , AttributeSet set) { super(context ,set); } @Override public void onDraw(Canvas canvas) { super.onDraw(canvas); // 设置画笔的颜色 p.setColor(Color.RED); // 绘制一个小圆(作为小球) canvas.drawCircle(currentX, currentY, 15, p); }
// 为该组件的触碰事件重写事件处理方法 @Override public boolean onTouchEvent(MotionEvent event) { // 修改currentX、currentY两个属性 currentX = event.getX(); currentY = event.getY(); // 通知当前组件重绘自己 invalidate(); // 返回true表明该处理方法已经处理该事件 return true; }}
