IOS 生成本地验码(烟台杰瑞教育IOS培训部原创).docxVIP

IOS 生成本地验码(烟台杰瑞教育IOS培训部原创).docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
IOS 生成本地验码(烟台杰瑞教育IOS培训部原创)

 HYPERLINK / 烟台杰瑞教育科技有限公司( HYPERLINK / IOS开发培训部) 版权所有 ------ HYPERLINK / 杰瑞教育( HYPERLINK  ) 专注IT技能培训 打造一流 HYPERLINK / 人才服务平台------ IOS 生成本地验证码   在应用程序注册、登陆或者有关支付确认的界面,经常会用到验证码,验证码有的是通过手机发送获取的,有的是在本地点击获取的,通过手机发送获取的动态验证码可以使用第三方类库实现,本地点击获取的是在本地自己绘制的,下面我们来详细讲解一下本地生成动态验证码的过程。 ? 一导入CoreGraphics.framework 二验证码封装了一个UIView,在使用的时候直接把这个View加到界面上使用   CaptchaView.h #import UIKit/UIKit.h @interface CaptchaView : UIView @property (nonatomic, retain) NSArray *changeArray; //字符素材数组 @property (nonatomic, retain) NSMutableString *changeString; //验证码的字符串 @end   CaptchaView.m #import CaptchaView.h #define kRandomColor [UIColor colorWithRed:arc4random() % 256 / 256.0 green:arc4random() % 256 / 256.0 blue:arc4random() % 256 / 256.0 alpha:1.0]; #define kLineCount 6 #define kLineWidth 1.0 #define kCharCount 6 #define kFontSize [UIFont systemFontOfSize:arc4random() % 5 + 15] @implementation CaptchaView @synthesize changeString,changeArray; - (instancetype)initWithFrame:(CGRect)frame { if (self = [super initWithFrame:frame]) { self.layer.cornerRadius = 5.0; //设置layer圆角半径 self.layer.masksToBounds = YES; //隐藏边界 self.backgroundColor = kRandomColor; //显示一个随机验证码 [self changeCaptcha]; } return self; } #pragma mark 更换验证码,得到更换的验证码的字符串 -(void)changeCaptcha { //一从字符数组中随机抽取相应数量的字符,组成验证码字符串 //数组中存放的是全部可选的字符,可以是字母,也可以是中文 self.changeArray = [[NSArray alloc] initWithObjects:@0,@1,@2,@3,@4,@5,@6,@7,@8,@9,@A,@B,@C,@D,@E,@F,@G,@H,@I,@J,@K,@L,@M,@N,@O,@P,@Q,@R,@S,@T,@U,@V,@W,@X,@Y,@Z,@a,@b,@c,@d,@e,@f,@g,@h,@i,@j,@k,@l,@m,@n,@o,@p,@q,@r,@s,@t,@u,@v,@w,@x,@y,@z,@杰,@瑞,@教,@育,nil]; //如果能确定最大需要的容量,使用initWithCapacity:来设置,好处是当元素个数不超过容量时,添加元素不需要重新分配内存 NSMutableString *getStr = [[NSMutableString alloc] initWithCapacity:kCharCount]; self.changeString = [[NSMutableString alloc] initWithCapacity:kCharCount]; //随机从数组中选取需要个数的字符,然后拼接为一个字符串 for(int i = 0; i

文档评论(0)

mi80868668 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档