iOS--输入密码错误的时候,抖动

直接上代码:

//
//  ViewController.m
//  密码错误--抖动动画
//
//  Created by 刘志武 on 16/8/6.
//  Copyright © 2016年 zhiwuLiu. All rights reserved.
//

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.

    UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(50, 300, 200, 30)];
    label.backgroundColor = [UIColor purpleColor];
    label.tag = 1000;
    [self.view addSubview:label];

}

-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{

    UILabel *label = [self.view viewWithTag:1000];

    [self shakeAnimationForView:label];

}

#pragma mark 抖动动画
- (void)shakeAnimationForView:(UIView *) view
{
    // 获取到当前的View
    CALayer *viewLayer = view.layer;
    // 获取当前View的位置
    CGPoint position = viewLayer.position;
    // 移动的两个终点位置
    CGPoint x = CGPointMake(position.x + 5, position.y);
    CGPoint y = CGPointMake(position.x - 5, position.y);
    // 设置动画
    CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"position"];
    // 设置运动形式
    [animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]];
    // 设置开始位置
    [animation setFromValue:[NSValue valueWithCGPoint:x]];
    // 设置结束位置
    [animation setToValue:[NSValue valueWithCGPoint:y]];
    // 设置自动反转
    [animation setAutoreverses:YES];
    // 设置时间
    [animation setDuration:.06];
    // 设置次数
    [animation setRepeatCount:3];
    // 添加上动画
    [viewLayer addAnimation:animation forKey:nil];

}
- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end
时间: 2024-11-03 21:05:28

iOS--输入密码错误的时候,抖动的相关文章

ios常见错误之 Failed to instantiate the default view controller for UIMainStoryboardFile &#39;Main&#39; - perhaps the designated entry point is not set?

Failed to instantiate the default view controller for UIMainStoryboardFile 'Main' - perhaps the designated entry point is not set? 这是因为给你的StoryBoard没有设置默认显示的controller, 解决方法: from:http://my.oschina.net/u/936286/blog/316565 ios常见错误之 Failed to instanti

iOS 发布错误,ERROR ITMS-9000:&quot;Invalid Code Signing Entitlements.Your application Bundles signature code

iOS 发布错误,ERROR ITMS-9000:"Invalid Code Signing Entitlements.Your application Bundles signature code signing entitlements that are not supported on ios ,Specifically, value'*' for key 'com.apple.developer.associated-domains' in 'Payload/'' is not supp

【Discuz】打开网站提示Oops! System file lost: class/class_mysqli.php无法进入论坛与输入密码错误多次被禁止尝试

一.打开网站提示Oops! System file lost: class/class_mysqli.php无法进入论坛 打开Discuz工程,出现Oops! System file lost: class/class_mysqli.php无法进入论坛,如下图,造成的原因有多种,可能是升级失败.迁移所导致等等. 除去Mysql数据库本来没有连接成功,可以通过直接修改代码解决. 打开source\class\class_core.php,找到如下120行的throw new Exception('

iOS编译错误:Property cannot have array or function type &#39;Block&#39; (aka &#39;void (XXXXView *__st

XXXXView 中的Block错误,原因: typedef void (^Block)(XXXXView *); 在这个demo中忘记写^了,导致此错误 iOS编译错误:Property cannot have array or function type 'Block' (aka 'void (XXXXView *__st

IOS 编译错误,iOS compile error: no visible @interface for &#39;CDVCommandDelegateImpl&#39; declares the selector

把Cordova 升级到 3.6.3 版本后,在变异的使用出现了如下问题 The error: /Volumes/local.uhmuhm.net/projectxxx/htdocs/phonegap/src/Projectxxx/platforms/ios/Projectxxx/Classes/MainViewController.m:154:19: error: no visible @interface for 'CDVCommandDelegateImpl' declares the s

django实现登录时候输入密码错误5次锁定用户十分钟

django实现登录时候输入密码错误5次锁定用户十分钟 在学习django的时候,想要实现登录失败后,进行用户锁定,切记录锁定时间,在网上找了很多资料,但是都感觉不是那么靠谱,于是乎,我开始了我的设计,其实我一开始想要借助redis呢,但是想要先开发一个简单的,后续在拆分后,然后在去进行拆分, 这样也是很接近我们在真实的开发中所遇到问题. 我的思路是: 输入账号密码>是否已经登录>提示已经登录 输入账号密码>错误次数少于6次>校验密码>登录成功,记录登录时间,错误次数清空,记

iOS 网络错误-分类

在进行网络数据交换的时候总是遇到各种各样的错误. 这些网络错误是来自client还是server. 我们来梳理一下: 我们将错误分为三个大类 操作系统错误 http请求错误 应用错误 1.操作系统错误是因为数据包没有到达预定目标导致的,造成原因可能有: 没有网络--没有连接网络 无法路由到目标主机--主要是因为目标主机可能位于隔离网络或者处于离线状态.导致的. 没有应用监听目标port--请求到达目标主机后数据包会发送到指定的port号.假设server没有监听这个port号或者是有太多的请求在

IOS开发错误

After modifying system headers, please delete the module cache at '/Users/XXX/Library/Developer/Xcode/DerivedData/XXXX/2ZMDAUJMMHSDC' 解决的方法:前往 '/Users/XXX/Library/Developer/Xcode/DerivedData/XXX/2ZMDAUJMMHSDC 这个目录,删除其目录中的内容.然后执行app,没问题了,注意不是删除 2NEVAP

[iOS OpenCV错误解决]

(编译使用O-C会出现错误:<list> not found) (未添加系统库会出现的错误:undefined symbols for architecture armv7) iOS工程调用OpenCV库进行开发时,需要将项目编译类型改为Objective-C++,并且需要将需用到的系统库添加进项目. PS:按照Objective-C方式编译,系统库一般会自动添加进去,按照C++或Objective-C++,需要手动添加所需的系统库.

【读书笔记】iOS网络-错误处理的经验法则

一,在接口契约中处理错误. 二,错误状态可能不正确. 设备模糊地确认操作是崇拜失败的.比如,移动应用发出HTTP请求以在两个账户间转账.请求被银行系统接收并正确地处理:然而,由于网络失败应答却丢失了,NSURLConnection报告超时.超时发生了,但却是在转账请求成功之后发生的.如果重试该操作,就会导致重复转账,可能会造成用户透支. 三,验证负载. JSON和XML就具备了验证机制的负载格式,不过,以逗号分隔的值文件与HTML就没有这种机制. 四,分离错误与正常的业务状况. 五,总是检查HT