押した後に画面上でランダムに移動する UIButton を作成したいと思います。ブロックでアニメーションを使いたい。どうやってこれを行うのですか?
質問する
754 次
1 に答える
1
これを試してください。これは、ボタンを右に 50 ピクセルアニメーション化してから元に戻す簡単な例です (IB で myButton をリンクすることを忘れないでください) -
.h -
@property (nonatomic, retain) IBOutlet UIButton *myButton;
.m -
@synthesize myButton;
-(IBAction)myButtonPressed {
CGPoint oldCentre = myButton.center;
CGPoint newCentre = myButton.center;
newCentre=CGPointMake(newCentre.x + 50.0, newCentre.y);
[UIView animateWithDuration:0.3
delay:0.0
options:(UIViewAnimationOptionCurveLinear | UIViewAnimationOptionAllowUserInteraction)
animations:^{
myButton.center = newCentre;
}
completion:^(BOOL finished){
[UIView animateWithDuration:0.3
delay:0.0
options:(UIViewAnimationOptionCurveLinear | UIViewAnimationOptionAllowUserInteraction)
animations:^{
myButton.center = oldCentre;
}
completion:nil
];
}
];
}
好きなアニメーションをブロックに入れることができます。
UIViewAnimationOptionAllowUserInteraction ビットを取り除くことを検討することをお勧めします。アニメーション中にユーザーがボタンに触れ続けると、面白い結果が生じる可能性があるためです...
于 2012-04-16T09:07:13.643 に答える