![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
iOS
MichaelOfKing
这个作者很懒,什么都没留下…
展开
-
YYText识别链接和点击事件
YYText识别链接和点击事件在使用YYLabel时有个比较麻烦的事情,就是YYLabel无法自动识别链接。因此我写了一个正则表达式来解决这个问题。NSMutableAttributedString *attrStr = [[NSMutableAttributedString alloc] initWithString:@"这里传入富文本"];;// 匹配条件 NSString *regulaStr = @"((http[s]{0,1}|ftp)://[a-zA-Z0-9\\.\\-]+\\.原创 2021-04-14 18:37:07 · 1037 阅读 · 0 评论 -
iOS最多保留两位小数,小数点后末尾的0不要
iOS最多保留两位小数,小数点后末尾的0不要iOS开发中,相信大家一定遇到过这样的需求,想要最多保留两位小数,但是小数点后末尾的0不想要.那么大家可以试试下面的方法:NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];formatter.numberStyle = kCFNumberFormatterDecimalStyle;NSString *string = [formatter stringFromNumber:@(1原创 2021-04-01 18:06:11 · 1729 阅读 · 0 评论 -
Swift中权限关键字
Swift中权限关键字在了解Swift中的权限关键字之前我们需要知道模块和源文件两个概念:1.模块指的是独立地代码分发单元,框架或应用程序会作为一个独立的模块来构建和发布。在 Swift 中,一个模块可以使用 import 关键字导入另外一个模块。2.源文件就是 Swift 中的源代码文件,它通常属于一个模块,即一个应用程序或者框架。尽管我们一般会将不同的类型分别定义在不同的源文件中,但是同一个源文件也可以包含多个类型、函数之类的定义。Swift 中有个5个级别的访问控制权限,从高到低依次是 op原创 2021-03-24 13:33:09 · 289 阅读 · 0 评论 -
iOS符号化崩溃日志
iOS符号化崩溃日志一.获取xxx.crash奔溃日志二.获取dSYM文件是iOS编译后保存16进制函数地址映射信息的文件三.获得symbolicatecrash工具四.以上获取的三个文件在符号化前最好先检查一下xxx.app.dSYM和xxx.crash的uuid是否一致。在我们拿到奔溃日志时,里面都是一些看不懂的”乱码“,此时我们就需要对日志进行符号化解析成我们能看懂的类名,方法名和具体的代码行数。主要用到3个文件1.xx.crash2.xxx.app…dSYM3.symbolicatecr原创 2021-03-23 11:22:13 · 661 阅读 · 0 评论 -
iOS中事件处理流程
iOS中事件处理流程iOS开发者大都略知一二事件的传递机制,但是对于事件在处理过程中所调用的具体方法和方法所应用的场景是比较模糊的.今天我就简单的介绍一下事件处理流程和具体的使用.事件处理流程:1.当用户点击屏幕时会产生一个触摸事件,系统会将该事件包装成一个UIEvent加入到一个由UIApplication管理的事件队列中.2.UIApplication会从事件队列中取出最前面的事件进行分发以便处理,通常先发送给应用程序的主窗口(UIWindow)3.主窗口会调用hitTest:withEven原创 2021-02-21 18:34:44 · 1247 阅读 · 2 评论 -
UILabel设置约束优先级
UILabel设置约束优先级相信很多人在iOS开发中,使用多个UILabel会遇到一个问题,在多个UILabel并列或者垂直排列设置约束都会报错.既无法确定高度或者宽度.其实这是iOS系统没法判断哪个控件的约束优先级更多而报错。下面我们就看看代码如何设置吧// 水平方向别扯我 [label setContentHuggingPriority:UILayoutPriorityDefaultHigh forAxis:UILayoutConstraintAxisHorizontal原创 2021-02-08 12:15:12 · 1230 阅读 · 1 评论 -
多线程中通知的使用
多线程中通知的使用在iOS开发中大家使用通知时不知道有没有人想过一个问题;子线程的发出的通知会在哪个线程执行呢?今天我们就来验证一下,废话不多说直接上代码- (void)viewDidLoad { [super viewDidLoad]; dispatch_queue_t queue = dispatch_queue_create("com.dd", DISPATCH_QUEUE_CONCURRENT); dispatch_async(queue, ^{原创 2021-02-05 16:35:33 · 188 阅读 · 2 评论 -
防止已经转码的中文地址二次转码
防止已经转码的中文地址二次转码在公司项目中,视频播放的时候,url可能已经utf-8转码了,也可能未转码而包含中文,对url中的中文进行转码时,如果url中的中文已经是utf-8转码了,那么会二次转码,在项目需求中url就无效。对url中的中文进行转码(如果已知url中的中文没有进行utf-8转码)url = [url stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterS原创 2021-02-05 16:31:50 · 448 阅读 · 0 评论