可以将UIView对象的位置及尺寸变化处理成动画效果
基本的动画处理方式
//标识动画的开始位置 + (void)beginAnimations:(NSString *)animationID context:(void *)context //标识动画的结束位置,并开始动画 + (void)commitAnimations //设置动画执行时间,单位为秒 + (void)setAnimationDuration:(NSTimeInterval)duration //动画重复次数,默认为1 + (void)setAnimationRepeatCount:(float)repeatCount
如:通过改变btn的大小使用动画处理
CGRect frame = self.btn.frame; frame.size.width *= 1.2; frame.size.height *= 1.2; [UIView beginAnimations:@"btn" context:nil]; [UIView setAnimationDuration:0.5]; self.btn.frame = frame; [UIView commitAnimations];
block方式的动画处理
+ (void)animateWithDuration:(NSTimeInterval)duration animations:(void (^)(void))animations + (void)animateWithDuration:(NSTimeInterval)duration animations:(void (^)(void))animations completion:(void (^)(BOOL finished))completion + (void)animateWithDuration:(NSTimeInterval)duration delay:(NSTimeInterval)delayoptions:(UIViewAnimationOptions)options animations:(void (^)(void))animationscompletion:(void (^)(BOOL finished))completion
如:
CGRect frame = self.btn.frame; frame.size.width *= 1.2; frame.size.height *= 1.2; [UIView animateWithDuration:0.5 animations:^{ self.btn.frame = frame; }];
动画处理中使用形变属性
动画处理中使用形变属性是一个非常好的做法
基于自身初始形变值进行形变:
//位置形变 CGAffineTransform CGAffineTransformMakeTranslation ( CGFloat tx, CGFloat ty ); //尺寸形变 CGAffineTransform CGAffineTransformMakeScale ( CGFloat sx, CGFloat sy ); //旋转形变 CGAffineTransform CGAffineTransformMakeRotation ( CGFloat angle );
基于指定形变值进行形变:
//位置形变 CGAffineTransform CGAffineTransformTranslate ( CGAffineTransform t, CGFloat tx,CGFloat ty ); //尺寸形变 CGAffineTransform CGAffineTransformScale ( CGAffineTransform t, CGFloat sx,CGFloat sy ); //旋转形变 CGAffineTransform CGAffineTransformRotate ( CGAffineTransform t, CGFloat angle );
如:
CGAffineTransform transform = CGAffineTransformScale(self.btn.transform, 1.2, 1.2); [UIView beginAnimations:@"btn" context:nil]; [UIView setAnimationDuration:0.5]; self.btn.transform = transform; [UIView commitAnimations];
形变原始值常量:
const CGAffineTransform CGAffineTransformIdentity;
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
网站题目:UIKit框架(3)UIView的动画处理方式-创新互联
转载来源:https://www.cdcxhl.com/article8/hhoop.html
成都网站建设公司_创新互联,为您提供标签优化、关键词优化、静态网站、网站排名、App设计、营销型网站建设
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联