@interface UITextField(shake) - (void)shake; @end @implementation UITextField(shake) - (void)shake { CAKeyframeAnimation *animationKey = [CAKeyframeAnimation animationWithKeyPath:@"position"]; [animationKey setDuration:0.5f]; NSArray *array = [[NSArray alloc] initWithObjects: [NSValue valueWithCGPoint:CGPointMake(self.center.x, self.center.y)], [NSValue valueWithCGPoint:CGPointMake(self.center.x-5, self.center.y)], [NSValue valueWithCGPoint:CGPointMake(self.center.x+5, self.center.y)], [NSValue valueWithCGPoint:CGPointMake(self.center.x, self.center.y)], [NSValue valueWithCGPoint:CGPointMake(self.center.x-5, self.center.y)], [NSValue valueWithCGPoint:CGPointMake(self.center.x+5, self.center.y)], [NSValue valueWithCGPoint:CGPointMake(self.center.x, self.center.y)], [NSValue valueWithCGPoint:CGPointMake(self.center.x-5, self.center.y)], [NSValue valueWithCGPoint:CGPointMake(self.center.x+5, self.center.y)], [NSValue valueWithCGPoint:CGPointMake(self.center.x, self.center.y)], nil]; [animationKey setValues:array]; [array release]; NSArray *times = [[NSArray alloc] initWithObjects: [NSNumber numberWithFloat:0.1f], [NSNumber numberWithFloat:0.2f], [NSNumber numberWithFloat:0.3f], [NSNumber numberWithFloat:0.4f], [NSNumber numberWithFloat:0.5f], [NSNumber numberWithFloat:0.6f], [NSNumber numberWithFloat:0.7f], [NSNumber numberWithFloat:0.8f], [NSNumber numberWithFloat:0.9f], [NSNumber numberWithFloat:1.0f], nil]; [animationKey setKeyTimes:times]; [times release]; [self.layer addAnimation:animationKey forKey:@"TextFieldShake"]; } @end
这个效果可以用在一些用户输入数据的合法性验证上。
相关推荐
在这个项目中,视图动画被用来模拟输入框(UITextField)在用户未输入任何信息时的抖动效果,这通常用于表示错误或提醒用户注意。这种动画通常是通过Core Animation框架或者UIKit的动画API来实现的。 **实现抖动...
首先,我们要知道的是,`ShakeTextField` 是实现抖动效果的核心类,它继承自`UITextField`,并添加了自定义的动画功能。`UITextField`是iOS SDK提供的一种基础组件,用于接收用户输入的文字信息。而`ShakeTextField`...
见博客:http://blog.csdn.net/baidu_nod/article/details/37655153和http://blog.csdn.net/baidu_nod/article/details/37655327
文字输入框晃动的效果,源码UITextField-Shake,该项目添加了类似OS X登陆界面的密码的晃动效果,效果并且还可以设置动画的时间和频率的,非常不错的一个文本输入登陆的效果。 UITextField category that adds a ...
实际应用中,需要将这些静态数据替换为用户的真实输入,可以使用`UITextField`或`UIPickerView`等控件收集用户输入。 6. **实时预览输入效果** - 可以使用`NSAttributedString`来显示带有格式的文本,比如加粗、...
4. **文本字段(UITextField)**:在登录界面中,UITextField用于获取用户的输入。我们可以为每个字段设置占位符文本,并监听编辑更改事件,以便在用户输入时进行验证。 5. **按钮(UIButton)**:登录按钮通常触发验证...
2. **抖动动画**:这是一个自定义的UIView动画序列,通过改变文本框的位置来模拟“抖动”效果。这通常涉及到修改frame属性,并利用Core Animation进行平滑的动画过渡。 3. **自定义委托方法**:CKTextField可能定义...