はい,ということでコードだけ載せます,備忘録だし(無責任)
/**
* UIViewAnimationOptions
* これは書かなくていいので,コメントアウトにしてますよー
*/
/*enum {
UIViewAnimationOptionLayoutSubviews = 1 << 0,
UIViewAnimationOptionAllowUserInteraction = 1 << 1,
UIViewAnimationOptionBeginFromCurrentState = 1 << 2,
UIViewAnimationOptionRepeat = 1 << 3,
UIViewAnimationOptionAutoreverse = 1 << 4,
UIViewAnimationOptionOverrideInheritedDuration = 1 << 5,
UIViewAnimationOptionOverrideInheritedCurve = 1 << 6,
UIViewAnimationOptionAllowAnimatedContent = 1 << 7,
UIViewAnimationOptionShowHideTransitionViews = 1 << 8,
UIViewAnimationOptionCurveEaseInOut = 0 << 16,
UIViewAnimationOptionCurveEaseIn = 1 << 16,
UIViewAnimationOptionCurveEaseOut = 2 << 16,
UIViewAnimationOptionCurveLinear = 3 << 16,
UIViewAnimationOptionTransitionNone = 0 << 20,
UIViewAnimationOptionTransitionFlipFromLeft = 1 << 20,
UIViewAnimationOptionTransitionFlipFromRight = 2 << 20,
UIViewAnimationOptionTransitionCurlUp = 3 << 20,
UIViewAnimationOptionTransitionCurlDown = 4 << 20,
UIViewAnimationOptionTransitionCrossDissolve = 5 << 20,
UIViewAnimationOptionTransitionFlipFromTop = 6 << 20,
UIViewAnimationOptionTransitionFlipFromBottom = 7 << 20,
};*/
UIViewAnimationOptions options = 0;
options = options | UIViewAnimationOptionCurveLinear;
/**
* 普通にViewを動かすアニメーションの場合はこの関数を使う
*/
[UIView animateWithDuration:1.0 // アニメーション継続時間 NSTimeInterval型(つまりはdouble型)
delay:0.2 // アニメーション開始までの待ち時間 NSTimeInterval型
options:options // どんなアニメーションにするか 上に挙げたオプションのビット演算を指定
animations:^{
// ここにアニメーションを書く
[self.view setFrame:CGRectMake(self.view.bounds.size.width, self.view.frame.origin.y
self.view.bounds.size.width, self.view.frame.size.height)];
}
completion:^(BOOL finished) {
// ここにアニメーションが完了した後の処理を書く
NSLog(@"complete");
}];
/**
* 一方,遷移アニメーションなどは,この関数を使いましょう
*/
options = 0 | UIViewAnimationOptionTransitionFlipFromLeft | UIViewAnimationOptionCurveEaseOut;
[UIView transitionFromView:self.view // どのviewからアニメーションを始めるのかを指定
toView:self.animationView // どのviewで終わるのかを指定
* UIViewAnimationOptions
* これは書かなくていいので,コメントアウトにしてますよー
*/
/*enum {
UIViewAnimationOptionLayoutSubviews = 1 << 0,
UIViewAnimationOptionAllowUserInteraction = 1 << 1,
UIViewAnimationOptionBeginFromCurrentState = 1 << 2,
UIViewAnimationOptionRepeat = 1 << 3,
UIViewAnimationOptionAutoreverse = 1 << 4,
UIViewAnimationOptionOverrideInheritedDuration = 1 << 5,
UIViewAnimationOptionOverrideInheritedCurve = 1 << 6,
UIViewAnimationOptionAllowAnimatedContent = 1 << 7,
UIViewAnimationOptionShowHideTransitionViews = 1 << 8,
UIViewAnimationOptionCurveEaseInOut = 0 << 16,
UIViewAnimationOptionCurveEaseIn = 1 << 16,
UIViewAnimationOptionCurveEaseOut = 2 << 16,
UIViewAnimationOptionCurveLinear = 3 << 16,
UIViewAnimationOptionTransitionNone = 0 << 20,
UIViewAnimationOptionTransitionFlipFromLeft = 1 << 20,
UIViewAnimationOptionTransitionFlipFromRight = 2 << 20,
UIViewAnimationOptionTransitionCurlUp = 3 << 20,
UIViewAnimationOptionTransitionCurlDown = 4 << 20,
UIViewAnimationOptionTransitionCrossDissolve = 5 << 20,
UIViewAnimationOptionTransitionFlipFromTop = 6 << 20,
UIViewAnimationOptionTransitionFlipFromBottom = 7 << 20,
};*/
UIViewAnimationOptions options = 0;
options = options | UIViewAnimationOptionCurveLinear;
/**
* 普通にViewを動かすアニメーションの場合はこの関数を使う
*/
[UIView animateWithDuration:1.0 // アニメーション継続時間 NSTimeInterval型(つまりはdouble型)
delay:0.2 // アニメーション開始までの待ち時間 NSTimeInterval型
options:options // どんなアニメーションにするか 上に挙げたオプションのビット演算を指定
animations:^{
// ここにアニメーションを書く
[self.view setFrame:CGRectMake(self.view.bounds.size.width, self.view.frame.origin.y
self.view.bounds.size.width, self.view.frame.size.height)];
}
completion:^(BOOL finished) {
// ここにアニメーションが完了した後の処理を書く
NSLog(@"complete");
}];
/**
* 一方,遷移アニメーションなどは,この関数を使いましょう
*/
options = 0 | UIViewAnimationOptionTransitionFlipFromLeft | UIViewAnimationOptionCurveEaseOut;
[UIView transitionFromView:self.view // どのviewからアニメーションを始めるのかを指定
toView:self.animationView // どのviewで終わるのかを指定
duration:1.0 // 継続時間
options:options // UIViewAnimationOptionのビット演算
completion:^(BOOL finished) {
// 完了後の処理を書く
NSLog(@"complete");
}];
...なんかコメントのせいで見にくい!!
XCodeにコピペしたら見やすくなるかもね.
という,全力で無責任でした笑
HOMEに戻る