Я нашел это в Руководстве по программированию Quartz 2D:
Чтобы рисовать на экране в приложении iOS, вы настраиваете объект UIView и реализуете его метод drawRect: для выполнения рисования. Метод drawRect: представления вызывается, когда представление отображается на экране и его содержимое требует обновления. Перед вызовом пользовательского метода drawRect: объект представления автоматически настраивает среду рисования, чтобы ваш код мог начать рисование немедленно. В рамках этой конфигурации объект UIView создает графический контекст (непрозрачный тип CGContextRef) для текущей среды рисования. Вы получаете этот графический контекст в своем методе drawRect:, вызывая функцию UIKit UIGraphicsGetCurrentContext.
Поскольку у меня проблемы с недопустимым контекстом (потому что это 0x00, когда я возвращаюсь к повторному рисованию), мне было интересно, могу ли я получить текущий контекст в начале -drawRect и каким-то образом передать его в методы, которые я вызываю из -drawRect?
drawRect
напрямую, верно? Он вызывается UIKit только при необходимости. Если вы хотите обновить свое представление, вам следует вместо этого вызватьsetNeedsDisplay
. - person Cameron Spickert   schedule 09.04.2013