效果收集

CALayer的CATransition就可以.
    CATransition *animation = [CATransition animation];
    [animation setDelegate:self];
    // [animation setType:@"oglFlip"];
    [animation setType:@"cube"];
    //[animation setType:kCATransitionPush];
    [animation setSubtype:direction];
    [animation setDuration:1.0f];
    [animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]];
    [self.view.layer addAnimation:animation forKey:@"cube" ];

==================================

相应view上出现一个大的矩形框,然后矩形框逐渐缩小,直至消失

[UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:0.7];
    
    CATransform3D transform3D = CATransform3DTranslate(imageView.layer.transform,
                                                       CGRectGetMidX(self.frame)-CGRectGetMidX(imageOriFrame),
                                                       CGRectGetMidY(self.frame)-CGRectGetMidY(imageOriFrame), 0.0);
    
    CGFloat Scaling = 1.0f;
    iPadJRJ_v1_1AppDelegate *delegate = (iPadJRJ_v1_1AppDelegate *)[[UIApplication sharedApplication] delegate];
    if(UIInterfaceOrientationPortrait == delegate.navigationController.interfaceOrientation
       || UIInterfaceOrientationPortraitUpsideDown == delegate.navigationController.interfaceOrientation){
        Scaling = (CGRectGetWidth(self.frame)-36*2)/CGRectGetWidth(imageView.frame);
    } else {
        Scaling = (CGRectGetWidth(self.frame)-126*2)/CGRectGetWidth(imageView.frame);
    }
    
    [imageView.layer setTransform:CATransform3DScale(transform3D, Scaling, Scaling, 1.0)];
    
    //此三个参数分别是x,y,z轴放大倍数
    [UIView commitAnimations];

================================

iPhone滑动解锁效果

https://github.com/iosdeveloper/SlideToCancel

===========================

垂直的UISlider

#define degressToRadian(x) (M_PI * (x)/180.0)

CGAffineTransform rotation = CGAffineTransformMakeRotation(degressToRadian(90));

posted @ 2011-09-20 11:04  Gang.Wang  阅读(1795)  评论(0编辑  收藏  举报