上一页 1 2 3 4 5 6 7 8 9 10 ··· 14 下一页
摘要: layoutSubviews继承于UIView的子类重写,进行布局更新,刷新视图。如果某个视图自身的bounds或者子视图的bounds发生改变,那么这个方法会在当前runloop结束的时候被调用。为什么不是立即调用呢?因为渲染毕竟比较消耗性能,特别是视图层级复杂的时候。这种机制下任何UI控件布局上 阅读全文
posted @ 2022-04-18 21:42 黄增松 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 1、获取当前所展示的控制器: //需要获取到显示在最上面的viewController - (UIViewController *)theTopviewControler{ //获取根控制器 UIViewController *rootVC = [[UIApplication sharedAppli 阅读全文
posted @ 2022-04-18 21:09 黄增松 阅读(380) 评论(0) 推荐(0) 编辑
摘要: FPS监控:因为iOS设备屏幕的刷新时间是60次/秒,一次刷新就是一次VSync信号,时间间隔是1000ms/60 = 16.67ms,所有如果咋16.67ms内下一帧数据没有准备好,就会产生掉帧 RunLoop监控:通过子线程检测主线程的RunLoop的状态,kCFRunLoopBeforeSou 阅读全文
posted @ 2022-04-17 18:09 黄增松 阅读(226) 评论(0) 推荐(0) 编辑
摘要: 1.swift是静态语言,有类型推断,OC是动态语言。 2.swift面向协议编程,OC面向对象编程 3.swift注重值类型,OC注重引用类型。 4.swift支持泛型,OC只支持轻量泛型 5.swift支持静态派发(效率高)、动态派发(函数表派发、消息派发)方式,OC支持动态派发(消息派发)方式 阅读全文
posted @ 2022-04-17 11:29 黄增松 阅读(2482) 评论(0) 推荐(0) 编辑
摘要: 同步 异步 表示开辟新线程的能力 异步 可以开辟新线程同步 不可以 串行并行 表示队列调度任务的能力 串行 前一个任务执行完毕才能调度下一个任务并行 前一个任务一旦执行,就可以调度下一个任务 异步 + 串行 可以开辟新线程,但是任务只能一个一个取,所以没必要开辟新线程 结果:单线程 异步 + 并行 阅读全文
posted @ 2022-04-07 19:29 黄增松 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 死锁发生的条件 互斥条件:就是一个资源只能有一个进程占有,不可以被两个或者多个进程占有 不可剥夺条件:进程已经获得的资源在未使用完之前,不可以被抢占,只能在使用完之后自己释放 请求与保持条件:进程自己已经至少保持一个资源,又请求其他资源,但是这个资源被其他进程占有,而且又不释放自己已经占有的资源 环 阅读全文
posted @ 2022-03-30 17:29 黄增松 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 需求 在 ViewController ,点击按钮跳向 A2ViewController ,并传参 name=我 (正向传值) 在 A2ViewController ,点击屏幕,跳回 ViewController ,并传参 city=北京 (反向传值) 基于CTMediator的组件化方案,有哪些核 阅读全文
posted @ 2022-03-23 14:59 黄增松 阅读(83) 评论(0) 推荐(0) 编辑
摘要: 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 示例 1: 示例 2: /** * Definition for a binary tree node. * public class TreeNode { * public var val: Int * public var l 阅读全文
posted @ 2022-03-21 11:55 黄增松 阅读(27) 评论(0) 推荐(0) 编辑
摘要: 在runloop启动后,会通过通知,告诉观察者即将进入runloop. 之后,将要处理timer/source0事件通知。之后进入到正式的source0事件处理。如果有Source1 ,那么会通过goto语法,处理唤醒时,收到的消息。如果没有什么要处理的。就会进入休眠。唤醒操作:timer/sour 阅读全文
posted @ 2022-03-16 17:43 黄增松 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 源代码 + (Class)class { return self; } - (Class)class { return object_getClass(self); } Class object_getClass(id obj) { if (obj) return obj->getIsa(); el 阅读全文
posted @ 2022-03-16 10:32 黄增松 阅读(174) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 10 ··· 14 下一页