1

UIViewサブクラス内に、CATransitionにlayer:を追加するメソッドがあります。

- (void)animateWithDefaultTransition:(NSString *)transition duration:(CFTimeInterval)duration
{
    CATransition *animation = [CATransition animation];
    [animation setType:transition];
    [animation setDuration:duration];
    [animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseIn]];
    [animation setSubtype:@"fromRight"];

    [zoomView setHidden:NO];
    [[self layer] addAnimation:animation forKey:nil];
}

私はそれを次のような別のクラスから呼び出します:

[transitionView animateWithDefaultTransition:@"push" duration:1.0];

ただしzoomView、単に表示され、遷移は実行されません。

4

1 に答える 1

0

UIView移行方法を試してください:

[UIView transitionWithView:containerView
       duration:0.2
       options:UIViewAnimationOptionTransitionFlipFromLeft
       animations:^{
         [fromView removeFromSuperview];
         [containerView addSubview:toView];
       }
       completion:NULL];
于 2012-03-03T08:50:11.593 に答える