2009-11-04 14 views
15

私はこれまでのところiPhoneの開発でアニメーションのことをしていません。アニメーション:ビューが読み込まれたときにUIbuttonを右から左に移動するにはどうすればいいですか?

ビューが読み込まれたときにUIbuttonを右から左に移動する方法を教えてもらえますか?

ビューをロードすると、ボタンが右端から左に移動して表示されます&はその位置で停止します。出来ますか?

このアニメーションについての助けがあれば幸いです。可能であれば、サンプルを参考にしてください。

ありがとうございます。

答えて

32

のようになりますUIViewのフレームを変更せず、その中心を示唆します。

CGPoint newLeftCenter = CGPointMake(20.0f + myButton.frame.size.width/2.0f, myButton.center.y); 
[UIView beginAnimations:nil context:nil]; 
[UIView setAnimationDuration:1.0f]; 
myButton.center = newLeftCenter; 
[UIView commitAnimations]; 
+0

お返事ありがとうございます。 – Rambo

+1

+1いいです。これは私が探していたものです。 –

+0

あなたが最高になるまで! –

2

viewDidAppear:アニメーションブロック内のボタンのフレームを変更することができます(BOOL)アニメーションメソッド。あなたはあなたが望むものを見るでしょう。 UIViewクラスリファレンスのアニメーションに関するドキュメントを確認してください。最も単純アニメーションブロックは、私は、ただ、それもスリッカーにすること(申し訳ありませんが、私は今、近くの一切のMacを持っていないので、コードは単にコピー&ペースト後に動作することはできません)

[UIView beginAnimations:nil context:nil]; 
[UIView setAnimationDuration:1.0f]; 
[myButton setFrame:newFrame]; 
[UIView commitAnimations]; 
+0

ありがとうMorion私はansを手に入れました。 – Rambo

1

上から

CATransition *animation = [CATransition animation]; 
[animation setDuration:0.4]; 
[animation setType:kCATransitionPush]; 
[animation setSubtype:kCATransitionFromBottom]; 
[animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]]; 
[[TopButton layer] addAnimation:animation forKey:@"SwitchToDown"]; 
0

/*共通遷移サブタイプアニメーション下へ。 */

kCATransitionFromRight

kCATransitionFromLeft

kCATransitionFromTop

kCATransitionFromBottom

スウィフト:

let transition1: CATransition = CATransition() 
    let timeFunc1 : CAMediaTimingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut) 
    transition1.duration = 1.0 
    transition1.timingFunction = timeFunc1 
    transition1.type = kCATransitionPush 
    transition1.subtype = kCATransitionFromRight 
    self.yourBtnORViewRef.layer.addAnimation(transition1, forKey: kCATransition) 

のObjective-C

CATransition *animation = [CATransition animation]; 
[animation setDuration:1.0]; 
[animation setType:kCATransitionPush]; 
[animation setSubtype:kCATransitionFromRight]; 
[animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]]; 
[[self.yourBtnORViewRef layer] addAnimation:animation forKey:@"SwitchToRight"]; 
関連する問題