一种是自定义Layer继承CALayer重写 - (void)drawInContext:(CGContextRef)ctx方法
- (CGRect)imageRectForContentRect:(CGRect)contentRect
{
CGFloat imageW = 40;
CGFloat imageH = 47;
CGFloat imageX = (contentRect.size.width - imageW) * 0.5;
CGFloat imageY = 20;
return CGRectMake(imageX, imageY, imageW, imageH);
}
特别注意:当重写这个方法时,需要调用layer的setNeedsDisplay.一种是在试图控制器中用layer的delegate
重写代理方法
- (void)drawLayer:(CALayer *)layer inContext:(CGContextRef)ctx{
}