1

我想根据不同的用户动作动态改变当前的CGContextRef?这是可能的还是它的修改只能在drawRect:视图实例中进行?当我打电话UIGraphicsGetCurrentContext()到外面时会发生什么drawRect:,这样做有什么限制吗,是否推荐?我需要考虑的任何可能的影响?

4

1 回答 1

0

根据文档,图形上下文仅在调用此函数之前设置。这意味着如果这个函数没有被调用,它将不会被设置,并且如果你不让系统再次调用它(因为这个原因你永远不要这样做)它也不会在那里。

使用以下函数之一强制视图返回 drawRect:

setNeedsDisplay:
setNeedsDisplayInRect:

然而,这并不意味着你只能在 drawRect 内做事。这个上下文在那个时候是全局可用的,你可以调用干净的单独函数甚至类来绘制东西。传递对这些函数的引用是一种干净的方法。

于 2014-06-10T03:16:26.947 回答