• Canvas


    it holds all of your "draw" calls. Via the Canvas, your drawing is actually performed upon an underlying Bitmap, which is placed into the window.

    说明及理解:

    1.在View的事件回调方法onDraw()中,要做的仅仅是直接使用draw方法(canvas已经提供给你了,不需要再考虑canvas问题)。对于SurfaceView,可以通过surfaceHolder.lockCanvas()方法获得特定的canvas。

    2.如果要自己新建一个Canvas,必需定义一个Bitmap。这样在canvas上调用的各种draw方法画出的内容都将承载在bitmap上。

    However, if you need to create a new Canvas, then you must define the Bitmap upon which drawing will actually be performed. The Bitmap is always required for a Canvas. You can set up a new Canvas like this:

    Bitmap b =Bitmap.createBitmap(100,100,Bitmap.Config.ARGB_8888); 
    Canvas c =newCanvas(b);

    3.你可以把你自己的Bitmap放到其它Canvas上。 通过Canvas.drawBitmap(Bitmap,...)方法。

    但建议,你最终的图像是画在View.onDraw()的画布上或者surfaceHolder.lockCanvas()的画布上。

    4.Canvas类有自己的画画方法集。如drawBitmap(...),drawRect(...)等等。你可能用到的其他的类,它们也有自己的画画方法。如你画在Canvas上的Drawable对象,也有draw()方法。它们是把canvas作为draw()方法的参数。

     


     

    ——by muyable 乐于交流
  • 相关阅读:
    打印出1-10000之间的所有对称数(如121,1331,2442)
    代码块
    javascript判断数据类型
    块和内嵌
    xhtml+css基础知识2
    xhtml+css基础知识1
    清除浮动
    margin注意问题
    javascirpt 闭包
    css3 box-sizing属性
  • 原文地址:https://www.cnblogs.com/muyable/p/3750094.html
Copyright © 2020-2023  润新知