2010-06-27 35 views
5

Açılan bir perdeyi canlandırmak istiyorum. İki resmim var: biri solda, diğeri de perdenin sağ tarafı için (kırmızıyla gösterilmiştir). Çekirdek Animasyon ile bunları kolayca kaydırmak istiyorum. Hangi animasyon türünü aramalıyım? Gerçekçi bir kayan stil nasıl elde edebilirim? En kolay çözüm olacaktırBir perdenin açılması: Temel Animasyon ile Animasyon

Selamlar,

Stefan

alt text http://img.skitch.com/20100627-8ytxrbe64ccbruj49c2pbs7kt2.png

cevap

1

ImageView veya CGLayers zorunda ve sonra ekran onları slayt bir animasyon bloğunda CGAffineTransformTranslate kullanmak.

5

Neden insanların çeviri kullanmasını önerdiğinden emin değilim. Yapmanız gereken tek şey görüntüleri kaydırmaksa, bir animasyon bloğu içinde her görüntü görünümünde -setCenter'u arayın. Şunun gibi:

pointOffScreenLeft ve pointOffScreenRight gibi bir şey hesaplanır
[UIView beginAnimations:nil context:NULL]; 
[UIView setAnimationDuration:1.0]; 
[leftCurtainImageView setCenter:pointOffScreenLeft]; 
[rightCurtainImageView setCenter:pointOffScreenRight]; 
[UIView commitAnimations]; 

:

CGPoint pointOffScreenLeft = CGPointMake(
       -[leftCurtainImageView bounds].size.width, 
       [leftCurtainImageView frame].origin.y); 

CGPoint pointOffScreenRight = CGPointMake(
       [rightCurtainImageView frame].origin.x + 
       [rightCurtainImageView bounds].size.width, 
       [leftCurtainImageView frame].origin.y); 

Bu hesaplamalar perdeler onların içeren bakış sırasıyla kadar sol ve aşırı sağ kenarlarında konumlandırılmış olduğunu varsayalım.