NSTimerとiphoneを使った簡単な動画で、雪が舞う効果があります.

9364 ワード

NSTimerとiphoneの簡単なアニメーションを使って、雪の効果を実現するのは比較的に簡単で、定時に一定の雪片のピクチャーを形成して、それからアニメーションの方式を使って下へ漂着します.(他のフォーラムでは、pathを使って実現した雲漂来の効果を見ましたが、実際にはそのような方法で実現できます.これは実際に前に述べたアニメーション効果の2つの応用です.)なので、view DidLoadイベントで、画像とタイマーを追加して起動することができます.ここのpicはヘッダファイルで定義してください.
1
2
3
4
5
6
-(void)viewDidLoad{
 [super viewDidLoad];
 self.pic = [UIImage imageNamed:@"snow.png"];//     
 //     ,      
 [NSTimer scheduledTimerWithTimeInterval:(0.2) target:self selector:@selector(ontime) userInfo:nil repeats:YES];
}
タイマーのタイミングで呼び出すオンタイムの方法を再実現します.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
-(void)ontime{
 UIImageView *view = [[UIImageView alloc] initWithImage:pic];//    UIImageView  ,      
 view.alpha = 0.5;//   view alpha 0.5,    
 int x = round(random()%320);//        x  
 int y = round(random()%320);//             x  
 int s = round(random()%15)+10;//            
 int sp = 1/round(random()%100)+1;//     
 view.frame = CGRectMake(x, -50, s, s);//          
 [self.view addSubview:view];//   view
 [UIView beginAnimations:nil context:view];//    
 [UIView setAnimationDuration:10*sp];//    
 view.frame = CGRectMake(y, 500, s, s);//            
 [UIView setAnimationDelegate:self];
 [UIView commitAnimations];
}