• UIView动画效果之----翻转.旋转.偏移.翻页.缩放.取反的动画效


    • 翻转的动画
    //开始动画 
    [UIView beginAnimations:@"doflip" context:nil]; 
    //设置时常 
    [UIView setAnimationDuration:1]; 
    //设置动画淡入淡出 
    [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut]; 
    //设置代理 
    [UIView setAnimationDelegate:self]; 
    //设置翻转方向 
    [UIView setAnimationTransition: 
    UIViewAnimationTransitionFlipFromLeft forView:manImageView cache:YES]; 
    //动画结束 
    [UIView commitAnimations];
    • 旋转动画
    //创建一个CGAffineTransform transform对象 
    CGAffineTransform transform; 
    //设置旋转度数 
    transform = CGAffineTransformRotate(manImageView.transform,M_PI/6.0); 
    //动画开始 
    [UIView beginAnimations:@"rotate" context:nil ]; 
    //动画时常 
    [UIView setAnimationDuration:2]; 
    //添加代理 
    [UIView setAnimationDelegate:self]; 
    //获取transform的值 
    [manImageView setTransform:transform]; 
    //关闭动画 
    [UIView commitAnimations];
    • 偏移动画
    [UIView beginAnimations:@"move" context:nil];
    [UIView setAnimationDuration:2];
    [UIView setAnimationDelegate:self];
    //改变它的frame的x,y的值
    manImageView.frame=CGRectMake(100,100, 120,100);
    [UIView commitAnimations];
    • 翻页动画
    [UIView beginAnimations:@"curlUp" context:nil]; 
    [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];//指定动画曲线类型,该枚举是默认的,线性的是匀速的 
    //设置动画时常 
    [UIView setAnimationDuration:1]; 
    [UIView setAnimationDelegate:self]; 
    //设置翻页的方向 
    [UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:manImageView cache:YES]; 
    //关闭动画 
    [UIView commitAnimations];
    • 缩放动画
    CGAffineTransform transform; 
    transform = CGAffineTransformScale(manImageView.transform,1.2,1.2); 
    [UIView beginAnimations:@"scale" context:nil]; 
    [UIView setAnimationDuration:2]; 
    [UIView setAnimationDelegate:self]; 
    [manImageView setTransform:transform]; 
    [UIView commitAnimations];
    • 取反的动画效果是根据当前的动画取他的相反的动画
    CGAffineTransform transform; 
    transform=CGAffineTransformInvert(manImageView.transform); 
    
    [UIView beginAnimations:@"Invert" context:nil]; 
    [UIView setAnimationDuration:2];//动画时常 
    [UIView setAnimationDelegate:self]; 
    [manImageView setTransform:transform];//获取改变后的view的transform 
    [UIView commitAnimations];//关闭动画
  • 相关阅读:
    分糖果
    数字游戏
    错误票据
    包子凑数
    带分数
    翻硬币
    核桃的数量
    快速幂
    公倍数与素数筛选
    mysql 查询当天当周当月的数据
  • 原文地址:https://www.cnblogs.com/xujinzhong/p/8436119.html
Copyright © 2020-2023  润新知