03-IOS坐标系统 动画效果


判断是否在执行动画
if(self.image.isanimation) return;

1 > frame: 能修改位置和尺寸
2 > center: 能修改位置
3 > bounds: 能修改尺寸 (x\y 一般都是 0 ) 以自己左上角为原点
4> transform:能修改大小 尺寸 旋转角度

2.transform操作图片

//    放大缩小
- (
IBAction )bigAndSmall:( UIButton *)sender {
 
if (sender. tag == 10 )
  {
   
CGAffineTransform trans = self . MyView . transform ;
   
CGAffineTransform form = CGAffineTransformScale (trans, 1.2 , 1.2 );
   
self . MyView . transform = form;
  }
else if (sender. tag == 20 )
  {
     
CGAffineTransform trans = self . MyView . transform ;
     
CGAffineTransform form = CGAffineTransformScale (trans, 0.9 , 0.9 );
     
self . MyView . transform = form;
  }
}
//    旋转
- (
IBAction )rotate:( UIButton *)sender {
   
CGAffineTransform trans = self . MyView . transform ;
   
CGAffineTransform form = CGAffineTransformRotate (trans, M_PI_4 );
   
self . MyView . transform = form;

}
//    平移
- (
IBAction )translation:( UIButton *)sender {
   
CGAffineTransform trans = self . MyView . transform ;
   
CGAffineTransform form = CGAffineTransformTranslate (trans, 0 , 10 );
   
self . MyView . transform = form;

}
//    复位
- (
IBAction )recove:( UIButton *)sender {
   
self . MyView . transform = CGAffineTransformIdentity ;
}



 


[ UIView   beginAnimations : nil   context : nil ];// 开始动画
[ UIView   setAnimationDuration : 2.0 ];  // 设置时间 s
[ UIView setAnimationRepeatCount : 100 ];//执行次数
要执行动画的代码
[ UIView commitAnimations ];              // 提交动画


4.block实现动画

  UIView animateWithDuration:<#(NSTimeInterval)#> animations:^{
        <#code#>
    }



5.延迟调用
//延迟调用
  [ self performSelector : @selector (dismissViewControllerAnimated:completion:) withObject : nil afterDelay : 1.0f ];




6.转场动画


- ( void )rightBtnAction
{
  // 设置动画的翻转方向
    UIViewAnimationTransition transition =_listBtn.hidden? UIViewAnimationTransitionFlipFromLeft:UIViewAnimationTransitionFlipFromRight;

    [ UIView animateWithDuration : .35 animations :^{
        [UIView setAnimationTransition : transition forView : _image cache : YES ];
    }];
   
   
_rightBtn . hidden = ! _rightBtn . hidden ;
   
_rightBtn1 . hidden = ! _rightBtn1 . hidden ;
  
}




7.实现动画左翻转  然后右翻转回来


- ( void )buttonAction {
   
    
UIView *customView = self . navigationItem . rightBarButtonItem . customView ;
   
   
// 切换按钮的显示
   
UIButton *postButton = ( UIButton *)[customView viewWithTag : 100 ];
   
UIButton *listButton = ( UIButton *)[customView viewWithTag : 101 ];
    postButton.
hidden = !postButton. hidden ;
    listButton.
hidden = !listButton. hidden ;
   
   
// 设置动画的翻转方向
   
UIViewAnimationTransition transition = postButton. hidden ? UIViewAnimationTransitionFlipFromLeft : UIViewAnimationTransitionFlipFromRight ;
   
   
// 翻转动画
    [
UIView beginAnimations : nil context : nil ];
    [
UIView setAnimationDuration : .35 ];
   
    [
UIView setAnimationTransition :transition forView :customView cache : YES ];
   
    [
UIView commitAnimations ];
   
}




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值