我引用了许多网站以及Android的文档,但我仍然对此感到困惑,
onDraw()
和View
都需要SurfaceView
方法。
在使用View
并且不使用onDraw()方法时,有人可以解释我如何在SurfaceView
和onDraw()
中绘制任何内容吗?
谢谢。
答案 0 :(得分:6)
在SurfaceView
中没有必要,在View
中,因为您有机会获得对画布的引用,因此您可以向视图添加额外的形状/位图,但是表面视图有功能强大的补充类SurfaceHolder
,其lockCanvas
方法返回对曲面视图画布的引用(无需覆盖onDraw
),最重要的是,使用lockCanvas
您可以完成所有绘制和处理形状/位图异步(使用unlockCanvasAndPost
发布更改),这与onDraw
不同,{{1}}取决于主线程和无效查看待执行...
希望它有所帮助。
此致