Рисовать пользовательский CGContextRef - больше, чем рамка? - PullRequest
0 голосов
/ 07 января 2012

У меня есть рамка моего UIView, и в drawRect он использует это как контекст, но я хочу, чтобы он рисовал вне этого контекста. Как мне указать свой собственный контекст, чтобы заставить его это сделать?

1 Ответ

4 голосов
/ 08 января 2012

Я не понимаю, как вы используете фрейм в качестве контекста.Кадр - это CGRect, а контекст - CGContextRef.

Возможно, вы спрашиваете, могут ли команды рисования в вашем методе drawRect: влиять на пиксели на экране, которые находятся за пределами границ представления.Ответ - нет.Вы можете создать CALayer, который является дочерним элементом уровня вашего представления и имеет рамку, которая выходит за пределы вашего представления.Если ваше представление не обрезает подпредставления, этот слой может рисовать за пределами вашего представления.Вам нужно прочитать о Core Animation или посмотреть видео WWDC, чтобы узнать больше об этом.

Возможно, вы спрашиваете, как создать закадровое растровое изображение, которое больше, чем границы вашего UIView, и рисовать на этом растровом изображении.Если это именно то, что вы хотите сделать, посмотрите на Рисование в контексте растровой графики в Руководстве по рисованию и печати для iOS .

...