0
我正在縮小對象的動畫。在任何時候,用戶都可以點擊按鈕來獲取對象的當前比例因子。 (我通過使用CGAffineTransformMakeScale縮放對象開始,因此在達到原始大小時縮放因子應爲1)。我只是不知道如何從動畫的UIImageView目前的規模係數......這是我的代碼:從CABasicAnimation獲取比例因子
- (void)startShrink {
CGAffineTransform scaleFactor = CGAffineTransformMakeScale(kScaleX, kScaleY);
imageOutline.transform = scaleFactor;
CABasicAnimation *shrink = [CABasicAnimation animationWithKeyPath:@"transform.scale"];
shrink.toValue = [NSNumber numberWithDouble:0.5];
shrink.duration = 2.0;
shrink.fillMode=kCAFillModeForwards;
shrink.removedOnCompletion=NO;
shrink.delegate = self;
[imageOutline.layer addAnimation:shrink forKey:@"shrink"];
}
我嘗試以下,但我不知道M12是我應該檢索值從變換。或者,如果在事實上,這是正確的做法:
- (float)calculateScale {
CATransform3D scaleTransform = [(CALayer *)[imageOutline.layer presentationLayer] transform];
float scale = scaleTransform.m12;
NSLog(@"Scale: %g", scale);
return scale;
}
任何意見最讚賞:)
謝謝,邁克爾。
大 - m11做的伎倆,謝謝! 這兩條線是爲了最初將圖像按比例縮小4倍,以便在應用動畫時,它會從超大尺寸縮小到其原始尺寸的一半。 – Smikey 2010-08-16 14:39:07