2010-01-27 111 views
0

我喜歡在傾斜時開始動畫。它不,所以我想一些重要的代碼是缺少的。請幫助:傾斜時動畫開始

- (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration { 
flap.animationImages = [NSArray arrayWithObjects: 
     [UIImage imageNamed: @"ronnie1.png"], 
     [UIImage imageNamed: @"ronnie2.png"], 
     [UIImage imageNamed: @"ronnie3.png"], 
     [UIImage imageNamed: @"ronnie4.png"], 
     [UIImage imageNamed: @"ronnie5.png"], 
     [UIImage imageNamed: @"ronnie6.png"], 
     [UIImage imageNamed: @"ronnie7.png"], 
     [UIImage imageNamed: @"ronnie8.png"], 
     [UIImage imageNamed: @"ronnie9.png"], 
     [UIImage imageNamed: @"ronnie10.png"],nil]; 
[flap setAnimationRepeatCount:1]; 
flap.animationDuration = 2; 
[flap startAnimating]; 
} 

回答

0

至於命名,-accelerometer:didAccelerate:將每當加速計檢測到加速度的變化被解僱。因此,在傾斜期間,這種方法可能會執行幾十次。但每次執行時,都會重置動畫,所以最終效果就好像沒有動畫發生一樣。

你必須(1)分析acceleration檢查它是否真的傾斜,和(2)檢查[flap isAnimating]如果YES重置動畫。

+0

KennyTm,你將如何分析加速度來檢查它是否真的在傾斜? – daidai 2011-08-05 00:19:49