I'm currently using CGContextDrawLayerInRect to draw a CGLayer in drawRect. This is called quite often. Is there any way to lessen the overhead by drawing only that part of the CGLayer which has changed instead of the whole CGLayer in drawRect?
-(void)drawRect:(CGRect)rect {
CGContextRef currentContext = UIGraphicsGetCurrentContext();
CGContextDrawLayerInRect(currentContext, [self bounds], _backgroundLayer);
}