Android开发笔记之自定义view篇(入门一简单的TextView)

    xiaoxiao2021-11-29  29

    很久没有更新博客,之前项目很急,一直很忙,最近才闲下来,之前对自定义View并不是很熟悉,也写过一些,但是只是了解个过程,所以自己想重新的对view的绘制机制钻研明白,就从最简单的TextView开始吧!,这篇博客带你了解一个自定义view的简单流程

    自定义View需要重写onDraw()方法,当然还有很多其他方法,但是这个是最重要的方法,需要绘制你的view显示内容,

    //系统会自动的调此方法来实现原生控件的功能,但是在调用之前之后我们都可以实现自己的逻辑 protected void onDraw(Canvas canvas){ //调用之前实现自己的逻辑,对于TextView来说即是在绘制文本内容之前 super.onDraw(canvas) //调用之后实现自己的逻辑对于TextView来说即是在绘制文本内容之后 }

    我们在构造方法中完成必要的初始化工作,比如画笔等等

    paint = new Paint(); paint.setColor(getResources().getColor(android.R.color.holo_blue_light)); paint.setStyle(Paint.Style.FILL); paint1 = new Paint(); paint1.setColor(Color.YELLOW); paint1.setStyle(Paint.Style.FILL);

    要实现上面的效果,我们需要绘制两个矩形,一个外层矩形,一个内层矩形

    canvas.drawRect(0,0,getMeasuredWidth(),getMeasuredHeight(),paint); canvas.drawRect(10,10,getMeasuredWidth()-10,getMeasuredHeight()-10,paint1); //完成之后要记得保存canvas画布这些属性 canvas.save(); //然后再调用父类的构造方法完成绘制 super.onDraw(); //取出画布的状态属性 canvas.restore(); //

    一个简单的自定义view就这么实现了,其实就是这么简单,坐下来慢慢的静下心来研究,其实没有那么难

    转载请注明原文地址: https://ju.6miu.com/read-678680.html

    最新回复(0)