YYAsyncLayer 是进行视图异步渲染的一个库。它的主要实现思路是 替换原有的 UIView 视图的 CALayer 类为 YYAsyncLayer。 在 YYAsyncLayer 里面的绘制方法里,创建异步绘制的上下文进行异步绘制,将具体的视图绘制外包给原有的视图去做,最后在异步绘制得到 Image 图片,通过主线程赋值给 CALayer 的 `con ...
YYAsyncLayer 是进行视图异步渲染的一个库。它的主要实现思路是 替换原有的 UIView 视图的 CALayer 类为 YYAsyncLayer。 在 YYAsyncLayer 里面的绘制方法里,创建异步绘制的上下文进行异步绘制,将具体的视图绘制外包给原有的视图去做,最后在异步绘制得到 Image 图片,通过主线程赋值给 CALayer 的 `con ...
本文尝试通过 STAR 原则拆解成Susu这个项目。 Situation 情景 Task 任务 Action 行动 Result 结果 业务介绍 Susu是一个线上的陌生人社交业务。目前全平台日活差不多 xx 万左右,具体在 iOS 上大概是 xx 万左右。 个人职责 团队之前是四个人,我的职责 IM SDK 部分的接入以及界面定制 视频 S ...
本文尝试通过 STAR 原则拆解成父母相亲这个项目。 Situation 情景 Task 任务 Action 行动 Result 结果 业务介绍 相亲是一个线上的相亲业务,目的是帮助老人在线上帮助孩子找对象。目前全平台日活差不多 xx 万左右,具体在 iOS 上大概是 xx 万左右。 主要的功能就是 首页推荐卡片流&各种运营引导入口Banner 收藏看过以及 ...
Q: swift 和 OC 初始化(init)方法的区别? Swift 的初始化方法和普通的 swift 方法有什么区别的点吗? init() { desktop = "桌子" } A: 和 OC 的初始化方法相比 1 - 初始化顺序的区别, swift 先初始化自己的成员变量,然后在调用父类的初始化方法,OC 的调用则相反 2 - swift 不需要 retu ...
本软件尊重并保护所有使用服务用户的个人隐私权。为了给您提供更准确、更有个性化的服务,本软件会按照本隐私权政策的规定使用和披露您的个人信息。但本软件将以高度的勤勉、审慎义务对待这些信息。除本隐私权政策另有规定外,在未征得您事先许可的情况下,本软件不会将这些信息对外披露或向第三方提供。本软件会不时更新本隐私权政策。您在同意本软件服务使用协议之时,即视为您已经同意本隐私权政策全部内容。本隐私权政策属于本 ...
I'm the author of Copyboard and Turnable Apps in the Apple Store. You can reach me in the following ways: 📩email: fanthus@163.com 🕸️twitter: fanthus 您也 ...
XPC 是 macOS 里经常用到的进程间通信机制。本文不关注 XPC 的内部机制,而是一篇教你如何上手 XPC 的文章。 创建 macOS 工程 FRTestXPC,选择 Cocoa App Template。 在工程 FRTestXPC 里点击增加 Target,在弹出框搜索 XPC, 选择搜索结果中的 XPC Service,然后命名 `Target ...
本文将按照如下顺序逐个说明 Block 的本质 Block 捕获成员变量 Block 的存储域以及内存生命周期分析 Block 捕获成员变量的生命周期 GCD 里面的 Block 分析 MRC & ARC 下 Block 内存管理区别 Block weak 分析 / strongSelf 分析 一些常问的关于 Block 的面试题回答 本 ...
Objective-C 语言里的拷贝就是对象拷贝,即创建一个跟之前的实例对象一模一样的对象。一般来说数据模型类是需要支持拷贝的。Objective-C 里拷贝又分为浅拷贝(shallow-copy)和深拷贝(deep-copy)。 浅拷贝和深拷贝区别 浅拷贝只是复制一下对象指针,但是拷贝前和拷贝后的对象指针均指向同一内存区域,只不过是对象的内存引用计数加一。 深拷贝为拷贝前 ...
通用的做法是使用 getifaddrs 方法获取到指向本机网络接口信息的一个链表,然后通过遍历该链表拿到当前的网卡对应的 IP 地址。 iPhone 上的无线网卡是 en0 ,所以拿到 ifaddrs 结构体后去判断其 name 成员变量的时候,判定 name 是否等于 en0。 如果是运行 iPhone 模拟器的话 en0 是代表当前电脑上 `en0 ...