draw()
类中的onDraw()
和View
方法之间有什么区别?
答案 0 :(得分:2)
SurfaceView.draw()基本上调用View.draw();如果你想实现你的绘图,你应该在View.onDraw()中实现它,你可以在源代码注释中实现它。
ViewGroup.drawChild()调用此方法让每个子视图绘制自己。此draw()方法是一个实现细节,并不打算覆盖或从ViewGroup.drawChild()以外的任何其他地方调用。 至于他们之间的区别: 绘制():
/*
* Draw traversal performs several drawing steps which must be executed
* in the appropriate order:
*
* 1. Draw the background
* 2. If necessary, save the canvas' layers to prepare for fading
* 3. Draw view's content
* 4. Draw children
* 5. If necessary, draw the fading edges and restore layers
* 6. Draw decorations (scrollbars for instance)
*/
onDraw()为空。它可供您实施。
答案 1 :(得分:0)
方法之间的主要区别是:
这仅仅意味着, draw(Canvas c)是在呈现给定视图时自动调用不的函数。用户需要提供将在其上呈现视图的Canvas' c。在调用此函数之前,用户还必须在画布上完成所有绘图。