请教一下自定义Canvas是怎样用。平时都是通过继承view,直接通过findViewById自动调用onDraw(),然后里面用Canvas搞东西,但是我现在想另外做一个类,不继承view,直接自己new canvas来画,但是发现什么都显示不了。。。
难道安卓画图只能用View吗?谢谢
请教一下自定义Canvas是怎样用。平时都是通过继承view,直接通过findViewById自动调用onDraw(),然后里面用Canvas搞东西,但是我现在想另外做一个类,不继承view,直接自己new canvas来画,但是发现什么都显示不了。。。
难道安卓画图只能用View吗?谢谢
view是被动的接受ViewRoot给它传递过来的canvas,然后view在此canvas上绘图。
View及其子类(如TextView, Button)要画在surface上才能最终显示。
画图的时候ViewRoot从Surface里获得到一个canvas(此实例一个activity的多个view共享),然后把canvas通过view的onDraw传给我们,我们在这个canvas上绘图,ViewRoot最后再通过suracefilinger显示到设备上
你自己定义的canvas可以画,但前端没法呈现。