Custom view is written in the. m file
#import "KKView.h"@interfaceKkview ()/** The Y value of the picture*/@property (nonatomic, assign) cgfloat imgy;@end@implementationKkview- (void) awakefromnib{ //Create Cadisplaylink, default 60 times per second
Cadisplaylink *display = [Cadisplaylink displaylinkwithtarget:self selector: @selector (updataimage)]; //adding Cadisplaylink to the message loop[Display Addtorunloop:[nsrunloop mainrunloop] formode:nsdefaultrunloopmode]; }- (void) updataimage{//This will drop the DrawRect method .[self setneedsdisplay];}- (void) DrawRect: (cgrect) rect {cgcontextref CTX=Uigraphicsgetcurrentcontext (); Cgcontextclearrect (CTX, rect); Cgimageref img= [UIImage imagenamed:@"Snow"]. Cgimage; CGRect Imgrect; if(_imgy>rect.size.height) {_imgy=0; } _imgy+=1; IMGRECT.ORIGIN.Y=_imgy; Imgrect.origin.x=0; Imgrect.size= Cgsizemake ( -, -); Cgcontextdrawimage (CTX, Imgrect, IMG);}@end
Quartz 2D Drawing (Brush frame animation)