android.graphics.Paint
内存重对象吗?哪一个更有效,可以将油漆对象的折线传递到需要绘制画布并设置诸如颜色,样式等的类别的类,或者在这些类中设置颜色,样式等,或在需要的任何地方创建新的油漆对象?
是的, Paint
很重,尤其是其创建和初始化。这是否意味着您必须为所有内容重用相同的Paint
对象?这得看情况。
如果要执行多个drawText()
,但是具有不同的颜色,则可以重复使用相同的油漆,但使用不同的颜色(使用setColor()
)。但是,如果您要在两个不同的类中执行两个无关的操作(绘图),并且在颜色,字体大小,样式,Patheffect等的油漆配置上存在主要差异...那么最好为它们拥有单独的油漆对象。
简而言之,使用相同的涂料来执行相似的图纸,而差异更少。并使用不同的油漆对象执行具有重大差异的无关绘图。希望这会有所帮助。
对我来说最好的方法是:为每个对象创建新的油漆,具有不同的样式,宽度或颜色。并用于绘制文字创建其他油漆。(如果您想画出不同颜色或文本大小的文本,请创建新的油漆)
这样,为其他开发人员创建代码更懒惰,因为一种涂料绘制了一个对象,它是一个很好的OOP样式)))。