iOS缩放、旋转UIButton

在练习缩放旋转UIButton控件时,出现点击控件x,y同时增加或者减一定像素,经过查找是xcode5开启了Auto Layout.

放大缩小的代码

- (IBAction)btnScale:(UIButton *)sender {
    //动画开始,设置执行时间
    [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:1];
    int tag = [sender tag];
    float scale = tag == 8? 1.2: 0.8;
    //CGAffineTransform _transform = _btn.transform;
    _btn.transform = CGAffineTransformScale(_btn.transform, scale, scale);
    //_transform = _btn.transform;
    //提交动画
    [UIView commitAnimations];
}

 左右旋转的代码

- (IBAction)btnRotate:(UIButton *)sender {
    [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:1];
    int tag = [sender tag];
    int rotate = tag == 7? 1: -1;
    _btn.transform = CGAffineTransformRotate(_btn.transform, M_PI_4*rotate);
    //int rotate = tag==7? 1: -1;
    //_btn.transform = CGAffineTransformRotate(_btn.transform, M_PI_4*rotate);
    [UIView commitAnimations];
}

 还原控件的操作

- (IBAction)btnReset:(UIButton *)sender {
    [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:1];
    sender.transform = CGAffineTransformIdentity;
    [UIView commitAnimations];
}

 

iOS缩放、旋转UIButton,,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。