手动调用 Drawrect

Posted

技术标签:

【中文标题】手动调用 Drawrect【英文标题】:Calling Drawrect manually 【发布时间】:2016-12-24 19:00:29 【问题描述】:

我正在使用UIBezierPath 绘图创建自定义视图。每当状态根据服务器的响应发生变化时,我想更新自定义视图填充颜色。我使用fillColor 属性作为参数来更新视图的颜色。如何以编程方式更改fillcolor

【问题讨论】:

【参考方案1】:

您必须切勿致电drawRect。相反,请致电setNeedsDisplay,然后会为您呼叫drawRect。至于改变颜色,这只是提前计划的问题——把颜色放在你的drawRect 例程可以找到的地方。因此,例如,如果您有一个保存填充颜色的属性,您可以更改它并调用setNeedsDisplay,从而可以使用新的填充颜色属性值重绘视图。

【讨论】:

马特说实话(像往常一样)。不允许自己调用 drawRect。用乔治·卡林的话来说,它会“扭曲你的思想,弯曲你的脊梁,让敌人赢得战争”。

以上是关于手动调用 Drawrect的主要内容,如果未能解决你的问题,请参考以下文章

Opengl-es 手动调用 onDrawFrame

手动调用析构函数总是一个糟糕的设计标志?

C++类-手动调用构造函数

C++类-手动调用构造函数

如何手动调用 UITableView 的委托方法?

jQuery Datatables,是不是可以手动调用操作方法?