Android中使用Canvas和Paint实现自定义View

本文详细介绍了在Android中如何使用Canvas和Paint实现自定义View,包括创建自定义View、重写onDraw方法、注意事项,以及通过实例演示画一个圆的方法,强调了构造函数、onDraw调用及画笔颜色与背景搭配的重要性。
摘要由CSDN通过智能技术生成

一、简述

对于自定义View的实现,Canvas和Paint两类是很有用的。
这两个类是 android.graphics 包下的两个类,Canvas是画布,Paint是画笔,通过这两者结合一起,就可以绘制出自己需要的View,然后将View加入到布局 xml 中或者在 Java 代码中引用即可。

二、基本步骤

(一)创建一个自定义的MyView继承View
(二)创建MyView的三个构造方法

  • MyView(Context context)
  • MyView(Context context,AttributeSet attributeSet)
  • MyView(Context context, AttributeSet attributeSet,int defStyleAttr)

(三)重写View.onDraw()方法,添加自己的绘制逻辑
(四)在Java代码中引用或者加入到XML布局中

三、具体步骤

(一)创建一个自定义MyView继承View

public class MyView extends View {
   

    }

(二)创建MyView的三个构造函数

    //当Java代码中创建MyView时调用,如setContentView(new MyView(this))
    public MyView(Context context) {
        super(context);
    }
    //当在XML中引入MyView时候调用
    public MyView(Context context, AttributeSet attributeSet)
    {
        super(context,attributeSet);
    }
    //这个构造函数一般不会主动调用
    public MyView(Context context,AttributeSet attributeSet,int defStyleAttr)
    {
        super(context,attributeSet,defStyleAttr);
    }

Tips:注意三个构造函数的区别,在不同的情况调用不同的构造函数

(三)重写View.onDraw()方法

   @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);
        //这里添加自己的绘制逻辑
    }

(四)在Java代码中引用或者加入到XML布

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值