メソッドを外部から渡せないの?

Posted 2010年7月7日 | Auther dada | Category PC・デジタル | Tag タグ: ,
Twitterにツイートする Facebookでシェアする はてなブックマーク

UIViewでアニメーションを行った後に実行するメソッドを
外部から指定することって出来ないかなーと思ってこんなふうに書いてみました。

結果としてエラーになったんですが、メソッドを渡すことって出来ないのかなぁ。
できました! 単なるタイプミスだったようです。^^;

-(void)startDialogAnimation:(id)delegateTarget action:(SEL)action{

	// アニメーション前準備
	// 画面の外にいったん出す
	CGRect frame = hogeView.frame;
	frame.origin.y = -100;
	[hogeView setFrame:frame];

	// アニメーション設定
	// 受け取ったオブジェクトとセレクターを設定してみた
	CGContextRef context = UIGraphicsGetCurrentContext();
	[UIView beginAnimations:nil context:context];
	[UIView setAnimationDelegate:delegateTarget];
	[UIView setAnimationDidStopSelector:action];
	[UIView setAnimationDuration:0.5];

	// アニメーションの完了値
	CGRect lastFrame =hogeView.frame;
	lastFrame.origin.y =300;
	[hogeView setFrame:lastFrame];

	[UIView commitAnimations]
}

呼び出すときはこんな感じ。

[dialogView startDialogAnimation:self action:@selector(hogeMethod)];

関連する記事

No Comments »

No comments yet.

Leave a comment

カテゴリー