2013年4月25日木曜日

[iOSアプリ]画面をくるりんアニメーションで遷移したい。

ChromeやSmartNewsなんかみたいにくるりんとアニメーションして遷移したいなと思いました。


こんな感じの画面(view1)を作って、左端の白い部分(View:moveLeftView)を左にスワイプしたら、



青い画面(view2)に回転アニメーションとともにかわる。というのを作ろうと思います。

■スワイプ
===================================

UISwipeGestureRecognizer* swipe=[[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(swipe:)];
//swipeジェスチャーを使いますよ。使ったらswipeメソッドを呼んでね。
    swipe.direction = UISwipeGestureRecognizerDirectionLeft;//左スワイプのとき
    swipe.numberOfTouchesRequired = 1;//一本指のとき
    [self.moveLeftView addGestureRecognizer:swipe];//上記のジェスチャーを白い部分にひも付け
====================================

■回転アニメーション
====================================
-(void)swipe:(UISwipeGestureRecognizer *)gesture {
    ViewController2 *view2 = [self.storyboard instantiateViewControllerWithIdentifier:@"view2"]; //storyboardのview2のオブジェクト作成
    [UIView beginAnimations:nil context:nil];//いまから条件つけます。
    [UIView setAnimationDuration:1.0];//1秒で
    [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:self.view cache:YES];//左回転で。
    [UIView commitAnimations];//アニメ開始で。
    
    [self presentViewController:view2 animated:YES completion:nil];//終わったらview2に遷移してね。
    
}
====================================

■結果



回っていくのは成功しましたが、新たなビューがモーダルな感じででてきちゃってます。
よくわかりません。
ひとつのビューで内容を入れ替えるだけなら、うまく回転させられそうですが、
ここまできて、方針を変更するのも気持ち悪いので、とりあえず寝ます。



0 件のコメント:

コメントを投稿