2011-09-01 30 views
14

UIImageview'u sürekli olarak bir topun görüntüsüyle döndürmeye çalışırken bir sorun yaşıyorum. Bu topun sürekli orta ekseninde dönmesini istiyorum. CGAffineTransform kullanmayı denedim ama işe yaramadı.Spin UIImageView sürekli

Lütfen yardım edin!

+0

Eğer 'UIImageView' içinde topu döndürmek gerekir mi? Eğer evet, UIImageView''ün animasyon metotlarını kullanmayı düşünürse – Saphrosit

cevap

4

siz dönüşümleri kullanabilirsiniz eğer çalışması gerekir: Ben çalışan bir çözümün bazı sample code yükledim

itemToRotate.transform = CGAffineTransformRotate(itemToRotate.transform, currentAngle); 

. Otomatik olarak döndürmek için mantığınızı ekleyin ...

+0

link woking: | –

+0

Whoops ... CloudApp hesabı tarafından silindi XO – tipycalFlow

80

Bu eski bir Q olabilir, ancak konuya ilişkin arama sonuçlarının en üstündedir. Aşağıda daha kesilmiş ve kuru çözüm: (QuartzCore ithal etmek emin olun/QuartzCore.h)

CABasicAnimation *rotation; 
rotation = [CABasicAnimation animationWithKeyPath:@"transform.rotation"]; 
rotation.fromValue = [NSNumber numberWithFloat:0]; 
rotation.toValue = [NSNumber numberWithFloat:(2*M_PI)]; 
rotation.duration = 1.1; // Speed 
rotation.repeatCount = HUGE_VALF; // Repeat forever. Can be a finite number. 
[yourView.layer addAnimation:rotation forKey:@"Spin"]; 

Sonra durdurma kaldır etmek/animasyon reset: (dur yerinde nasıl yorumlarını görmek) hızlı olarak

[yourView.layer removeAnimationForKey:@"Spin"]; 

:

let rotation = CABasicAnimation(keyPath: "transform.rotation") 
rotation.fromValue = 0 
rotation.toValue = 2 * M_PI 
rotation.duration = 1.1 
rotation.repeatCount = Float.infinity 
view.layer.addAnimation(rotation, forKey: "Spin") 
+0

ne bir mücevher. Teşekkürler –

+0

@Christopher Swasey animasyonun ortasında animasyon anahtarını kaldırarak dönüştürülmüş durumu değil, orijinal halini görüntüler. Dönüşümü korumak için herhangi bir yol var mı? – tGilani

+1

@tGilani, dönüşümü korumak için sadece CABasicAnimation'ı ayarlarken 'rotation.removedOnCompletion = NO; Bu, animasyonun sunum katmanını görünür halde bırakacaktır. IOS animasyonlarında kullanılan farklı katmanlar hakkında daha fazla bilgi için, bu gönderiyi çok yararlı buldum: [link] (http://stackoverflow.com/a/11515749/1114876). – adamup