ここにスクロール開口部の小さなアニメーションがあります。次に、それを逆にして、スクロールを再び閉じます。2つの質問があります。
- アニメーションの実行中にのみサウンドファイルを再生したい。アニメーションの開始時間と停止時間のタイミング以外でそれを行うにはどうすればよいですか?それをアニメーションの実行に結び付ける方法はありますか?
- 2つの別々のアレイを持つことにメモリを浪費するのではなく、同じアレイを逆に実行する方法はありますか?
**サンプルコード
- (void)loadAnimationArray;
{
// scroll close frame order
animationclose=[[NSArray alloc] initWithObjects:
[UIImage imageNamed:@"frame1.png"],
[UIImage imageNamed:@"frame2.png"],
[UIImage imageNamed:@"frame3.png"],
...
[UIImage imageNamed:@"frame25.png"],
[UIImage imageNamed:@"frame26.png"],nil];
// scroll open order
animationopen=[[NSArray alloc] initWithObjects:
[UIImage imageNamed:@"frame26.png"],
[UIImage imageNamed:@"frame25.png"],
[UIImage imageNamed:@"frame24.png"],
...
[UIImage imageNamed:@"frame3.png"],
[UIImage imageNamed:@"frame2.png"],
[UIImage imageNamed:@"frame1.png"],nil];
}
- (IBAction)buttonOpen:(id)sender
{
// default image post animation
_imageScrollAnimation.image = [UIImage imageNamed:@"frame1.png"];
// setting animation parameters
self.imageScrollAnimation.animationDuration=3;
self.imageScrollAnimation.animationRepeatCount=1;
self.imageScrollAnimation.animationImages=animationopen;
[self.imageScrollAnimation startAnimating];
}
- (IBAction)buttonClose:(id)sender
{
// default image post animation
_imageScrollAnimation.image = [UIImage imageNamed:@"frame26.png"];
// setting animation parameters
self.imageScrollAnimation.animationDuration=3;
self.imageScrollAnimation.animationRepeatCount=1;
self.imageScrollAnimation.animationImages=animationclose;
[self.imageScrollAnimation startAnimating];
}