sjfb.net
当前位置:首页 >> 请问各位高手,AnDroiD开发中的ViEw里面的OnDrAw函... >>

请问各位高手,AnDroiD开发中的ViEw里面的OnDrAw函...

Canvas canvas = new drawSurfaceView(activity).getHolder().lockCanvas(null);//用一 个view定义一个canvascanvas.drawLine(startX, startY, stopX, stopY, paint)//画线,需要起始坐标和结束坐标canvas.drawBitmap(bitmap, null, dest, paint...

有两种方法回调,一种是用hander发消息,一种是通过接口回调

还有可能是你自定义的这个view被别的view完全盖住了。

是相对于view的坐标,view的左上角是(0,0)点

android中,View在创建的时候,并不知道它的大小,如果用getwidth()和getheigh,得到的结果只能是0。只有当View重新布局后才会知道它的大小,在onDraw之前得到的大小只能为零,只有当你调用onDraw函数时候才能得到View的大小

CView类

1、使用向导创建一个基于单文档视图的应用程序,视图的基类选择CView。 2、在工程的Class视图的CXXXXView类中会发现OnDraw函数。双击它,就自动定位到函数体了。

OnDraw函数不用自己调用,当窗口需要重新绘制,系统会自动调。 如果自己想重新绘制,可以调用Invalidate、InvalidateRect或者UpdateWindow等函数,引起绘制即可。

WM_CREATE是创建窗口后第一个收到的消息 你的定时器初始化工作理应放进去 而视图类的OnPaint函数中调用了OnDraw函数 实际重绘由OnDraw完成 且Invalidate() UpdateWindow()都会调用它 当你拖动窗口的时候会一直的设置定时器 而导致无法预料的情况

可能是把你其它地方设置的值被它覆盖了

网站首页 | 网站地图
All rights reserved Powered by www.sjfb.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com