İşte UIview 30px'i aşağı yukarı y = 10'a taşımak için kullandığım kod budur ancak bu animasyon çalışmaz. Bu benim CAKeyframeAnimation'ı yaratma ilk denememdir, bu yüzden herkes doğru yazmam için bana yardımcı olabilir. Ayrıca, neslimin orijinal yerine geri dönmemesini, ancak animasyonun bittiği yerde kalmasını istiyorum.CAKeyframeanimation, yol boyunca UIView'i hareket ettirin
CGMutablePathRef thePath = CGPathCreateMutable();
CGPathAddRect(thePath, NULL, CGRectMake(self.logo.frame.origin.x, self.logo.frame.origin.y, self.logo.frame.size.width, self.logo.frame.size.height));
CGPathAddRect(thePath, NULL, CGRectMake(self.logo.frame.origin.x, self.logo.frame.origin.y-30, self.logo.frame.size.width, self.logo.frame.size.height));
CGPathAddRect(thePath, NULL, CGRectMake(self.logo.frame.origin.x, 100, self.logo.frame.size.width, self.logo.frame.size.height));
CAKeyframeAnimation* AniLoc = [CAKeyframeAnimation animationWithKeyPath:@"frame"];
AniLoc.path = thePath;
AniLoc.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut];
AniLoc.keyTimes= [NSArray arrayWithObjects:[NSNumber numberWithFloat:0.0f],
[NSNumber numberWithFloat:0.3f],
[NSNumber numberWithFloat:1.0f],nil];
AniLoc.duration = 2.0;
CFRelease(thePath);
[self.logo.layer addAnimation:AniLoc forKey:nil];
Hangi şekilde "çalışmıyor"? – jrturton
animasyon hiçbir şey hareket etmiyor –