Существует два метода drawRect:
- (void)drawRect:(CGRect)rect
{
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSaveGState(context);
// do drawing here
CGContextRestoreGState(context);
}
и
- (void)drawRect:(CGRect)rect
{
CGContextRef context = UIGraphicsGetCurrentContext();
UIGraphicsPushContext(context);
// do drawing here
UIGraphicsPopContext();
}
UIGraphicsPushContext/UIGraphicsPopContext от UIKit а CGContextSaveGState/CGContextRestoreGState - от CoreGraphics.
Вопросы. В чем разница между этими методами? Какой из них лучше использовать? Есть ли примеры доказательства одного метода лучше других и наоборот?