比如密码错误提示,需要文字左右晃动几次,以起到警示的作用。
为了调用使用方便,做一个分类。代码如下:

.h文件
#import <QuartzCore/QuartzCore.h> @interface CALayer (Anim) /* * 摇动动画 */ -(void)shake; @end
.m文件
#import "CALayer+Anim.h" @implementation CALayer (Anim) /* * 摇动 */ -(void)shake{ CAKeyframeAnimation *kfa = [CAKeyframeAnimation animationWithKeyPath:@"transform.translation.x"]; CGFloat s = 5; kfa.values = @[@(-s),@(0),@(s),@(0),@(-s),@(0),@(s),@(0)]; //时长 kfa.duration = 0.3f; //重复 kfa.repeatCount = 2; //移除 kfa.removedOnCompletion = YES; [self addAnimation:kfa forKey:@"shake"]; } @end
使用方法,非常简单,导入这个头文件,如下调用:
UILabel * wrongTip = [[UILabel alloc]initWithFrame:CGRectMake(20, 130*ScreenHeightRate+heightBit+heightBit2, self.messageView.width-40, 15)];
wrongTip.textColor = [@"ff0000" hexColor];
wrongTip.text = @"券商密码错误,请重新输入";
wrongTip.font = [UIFont HeitiSCWithFontSize:12.f];
wrongTip.textAlignment = NSTextAlignmentLeft;
[self.messageView addSubview:wrongTip];
// shake 动画
[wrongTip.layer shake];
本文介绍了一种在iOS应用中实现UI元素摇动动画的方法,通过自定义CALayer类添加动画效果,用于密码错误等场景的警示作用。代码示例展示了如何创建并应用摇动动画,以及如何在UILabel上使用此动画。

9835

被折叠的 条评论
为什么被折叠?



