OC
天行哥哥
这个作者很懒,什么都没留下…
展开
-
iOS 常用正则表达式(检验手机号、身份证等的有效性)
我们先对正则表达式语法做一个简单的说明,这样方便理解。网上关于正则的资料很多很多,我在这里只做下整理/** * 正则表达式简单说明 * 语法: . 匹配除换行符以外的任意字符 \\w 匹配字母或数字或下划线或汉字 \\s 匹配任意的空白符 \\d 匹配数字 \\b 匹配单词的开始或结束 ^ 匹配字符串的开始转载 2017-02-28 09:18:30 · 3822 阅读 · 0 评论 -
iOS富文本用法之UILabel怎么加载图片和超链接
经常会看到一些场景是一行文字里面夹杂着图片文字超链接,那在的iOS版里面显示文字的空间的的UILabel怎么达到此要求呢?下面标记一下用原生方法和很经典的三方库YYKit下的yytext中中两种方法的对比。/*! @brief 原生富文本 */-(void)primitAttributeStr { UILabel *label = [[UILabel alloc] initWi...原创 2018-11-20 11:08:36 · 4091 阅读 · 1 评论 -
iOS 给APP评分无法连接到App Store解决方法
最近突然发现APP内给应用评分功能跳转到App Store之后提示“无法连接到App Store”,研究之后发现是iOS 11系统的适配问题,这里记录下解决方法。iOS 11以前你的跳转App Store评分代码可能这样写的:[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"itms-apps://itun...原创 2018-08-02 17:22:53 · 2111 阅读 · 1 评论 -
iOS UIBezierPath和CAShapeLayer画一条多颜色的线条
项目需要做一个有多个色值的进度条,笨办法是创建多个视图,给每个视图设置不同颜色,当然还是画图更高级点。本次记录利用UIBezierPath和CAShapeLayer来画一条多颜色的线条。首先我们要先知道整个线条的所有色值,和当前的结果,也就是偏高然后创建颜色线条类,调用: NSString *resutStr = @"偏高"; NSArray *colorAr...原创 2018-03-22 19:26:49 · 5967 阅读 · 1 评论 -
iOS 控制器POP后dealloc方法不走,通知监听无法移除的问题
最近项目突然被说会闪退,且无法重现,时有出现。接到问题后一步步排查,终于发现问题。表现:某个页面的通知观察者方法被多次调用!原因查找:1、通知的监听这里我写在viewDidLoad里面,多次被调用只能说明多次发送了通知,或者多次添加了观察者。2、通知的发送确定没多次调用,而通知的监听为何会被多次添加?3、一般我们会在dealloc方法里面移除通知,打断点发现,dealloc方法原创 2017-06-14 18:38:37 · 5029 阅读 · 1 评论 -
iOS 计算生日转化为年龄的方法
假设生日1977-8-1,当前日期2017-6-16,问:你今年多少岁?这时候根据生活中和实际档案上,我们说的年龄可能不一样,如果只用年份相减,可以说,40岁(不管你生日到了没,2017年都是40岁),但要精确到日期,因为你2017年生日还没到,可以说是39岁,生日过了之后,可以说40岁。一般生日没到大家更愿意说小一岁,也就是目前39岁,这也跟腾讯QQ上显示年龄一致。1.根据出生日期返回年龄的方法...转载 2017-06-16 11:49:26 · 2182 阅读 · 0 评论 -
iOS 四舍五入保留两位小数
通常我们四舍五入输出可能你会用NSString stringWithFormat函数%.2f方式,但是这个四舍五入有时可能不是四舍五入,而是五舍六入。其实有更精确的四舍五入方式。先说一下最后确定使用的方法:(四舍五入,保留两位小数)-(float)roundFloat:(float)price{ return roundf(price*10转载 2017-05-09 11:32:27 · 7418 阅读 · 0 评论 -
iOS UIFont字体大小适配,利用类别写简单的runtime替换方法
通常我们不做字体大小的适配,但有时候需求要你在不同尺寸屏幕上显示合适的字体大小,如果你用的系统字体大小方法systemFontOfSize:,那么可以写一个类别,然后什么都不用做,自动替换所有字体大小。当然,此方法也适合替换其他方法,比如替换imageNamed:,可参考:http://blog.csdn.net/baidu_31326173/article/details/51590824原创 2016-08-03 14:09:58 · 5318 阅读 · 0 评论 -
iOS 利用MD5或SHA1加密算法给字符串加密
MD5加密算法多用于文件的验证, 比如说登录密码的匹配就是利用MD5的加密方式,还比如说安卓手机刷ROM包, windows封装系统等为了防止他人对文件进行篡改,都有使用MD5加密对其验证.SHA1用的不多,这里也做个使用笔记。下面介绍一下MD5加密实现方法:因为我们是要给字符串进行MD5加密,所以我们可以使用Catagory给Nsstring类扩展一个 MD5加密的功能原创 2017-02-28 11:36:22 · 2190 阅读 · 0 评论 -
iOS 关于网络数据解析小数位精度丢失问题的修正
近日,项目中出现了后台返回数据,特别是价格时,小数位会出现很多9999的现象,而在谷歌浏览器测试后台返回数据时,正常显示是只有2位,后台也说只返给了2位小数给我,百思不得其解,只能认为是开发环境不同造成的问题。之前的解决方案是利用 %.2f 进行截取四舍五入,其实可以正常使用,只是保留了两位小数。现在发现其实是,NSNumber的description方法不够严谨,在调用NSNumber的de原创 2016-11-23 13:46:04 · 10062 阅读 · 0 评论 -
Objective-C中nullable、__nullable、_Nullable、_Nonnull的用法
在 Swift 中,我们会使用? 和! 去显式声明一个对象或者方法的参数是optional还是 non-optional,而在 Objective-C 中则没有这一区分,这样就会带来一个问题:在 Swift与Objective-C 混编时,Swift编译器并不知道一个 Objective-C 对象或者一个方法的参数到底是optional 还是 non-optiona转载 2017-01-13 10:41:34 · 8888 阅读 · 0 评论 -
iOS 点击文字识别超链接并实现跳转
之前发过用原生方法写富文本加超链接的方法(iOS富文本用法之UILabel怎么加载图片和超链接),但是缺陷是点击超链接没反应,因为label里面没有加点击手势。这次mark下一条带有网址的文字怎么实现点击跳转。 UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action...原创 2018-11-20 12:18:03 · 2960 阅读 · 0 评论