0

ロード時にビューの特定のポイントでズームインする必要があるView Controllerがあります(ズームアウトをアニメーション化するため)。セグエによってナビゲーション スタックの一番上にプッシュされると、拡大された領域が非常によく表示されます。

ただし、StoryBoard に移動してそのビュー コントローラーを初期ビュー コントローラーとして設定すると、読み込み時にビューがズームインされますが、90 度回転します。理由はわかりません。コードは次のとおりです。

-(void)viewDidAppear:(BOOL)animated
{        
    //INITIAL TRANSFORM
    CGAffineTransform t1 = CGAffineTransformMakeTranslation(-50, 0); 
    CGAffineTransform t2 = CGAffineTransformTranslate(t1, 0, 250);
    CGAffineTransform t3 = CGAffineTransformScale(t2, 1.7, 1.7);
    self.view.transform = t3;

    //ZOOM OUT
    [UIView animateWithDuration:8
                          delay:1.5
                        options:UIViewAnimationCurveEaseOut animations:^{
                           // self.view.transform = CGAffineTransformIdentity;
                        }completion:nil
    ];
}

何かご意見は?

4

1 に答える 1

1

おそらく、ビューからの初期変換を使用する必要があります。

   -(void)viewDidAppear:(BOOL)animated
    {        
        //INITIAL TRANSFORM
        CGAffineTransform t0 = self.view.transform;
        CGAffineTransform t1 = CGAffineTransformTranslate(t0, -50, 0); 
        CGAffineTransform t2 = CGAffineTransformTranslate(t1, 0, 250);
        CGAffineTransform t3 = CGAffineTransformScale(t2, 1.7, 1.7);
        self.view.transform = t3;

        //ZOOM OUT
        [UIView animateWithDuration:8
                              delay:1.5
                            options:UIViewAnimationCurveEaseOut animations:^{
                               // self.view.transform = CGAffineTransformIdentity;
                            }completion:nil
        ];
    }
于 2012-05-24T11:45:17.343 に答える