首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
面试
订阅
用户5216651561705
更多收藏集
微信扫码分享
微信
新浪微博
QQ
19篇文章 · 0订阅
SDWebImage 源码解析
相信对于广大的iOS开发者,对SDWebImage并不会陌生,这个框架通过给UIImageView和UIButton添加分类,实现一个异步下载图片并且支持缓存的功能。整个框架的接口非常简洁,每个类的分工都很明确,是很值得大家学习的。 这个框架的核心类是SDWebImageMan…
iOS 离屏渲染探究
离屏渲染(Offscreen rendering)对iOS开发者来说不是一个陌生的东西,项目中或多或少都会存在离屏渲染,也是面试中经常考察的知识点。一般来说,大多数人都能知道设置圆角、mask、阴影等会触发离屏渲染,但我们深入的探究一下,大家能够很清楚的知道下面几个问题吗? 今…
iOS | 响应链及手势识别
在上一篇「事件传递及响应链」中介绍了当屏幕上发生一次触摸之后,系统会如何寻找「第一响应者」,在寻找到「第一响应者」之后,如何确定「响应链」以及如何沿「响应链」传递事件。在上一篇文章的环境中,是不使用 UIGestureRecognizer 的。但是在我们平时的开发中想要给一个 …
iOS | 事件传递及响应链
试想一下假如你是一台手机📟,当有人触摸了屏幕之后,你需要找到他具体触摸了什么东西,他可能触摸是一个按钮,或一个列表,也有可能是一个一不小心的误触,你会设计一个怎么样的机制和系统来处理呢?假如有两个按钮重叠了,或者遇到在滚动列表上需要拖动某个按钮的情况,你设计的机制能正常的运作…
彻底搞懂import "" 和 import <>
为什么不用 "",因为我发现用""编译器并不会给出提示,所以我一直以为只能用<>,但是在我做过的几个项目中,我其实并没有用到 <>,而是一直都用的 "",曾经也很奇怪为什么会不一样,但之前也只是想想,可能是项目设置里面加了什么东西,也没有仔细深入了解。(PS:这种精神还是不可取…
iOS 探究 | 第一篇 属性 @property 详细探究
@property 应该是面试过程中被问到最多的一个技术点,既能考察一个人的基础,又能挖掘一个人对技术细节的掌握度。
iOS程序员的自我修养-MachO文件动态链接(四)
动态链接要比静态链接复杂多了,我要是直接分析MachO文件动态链接的具体实现,会让读者知其然不知其所以然。所以本文分成2部分,第一部分先讲理论知识,基本解答了如下几个问题: 动态链接产生原因、基本思想、工作过程。 position-independent code (PIC 地…
iOS程序员的自我修养-编译、链接过程(一)
OC是用Clang/LLVM来编译的。接下来我将用clang来展开整个过程。main.m文件源码如下: 平时用Xcode去Build,一键从源码到程序。这个过程中隐藏了预处理、编译、汇编和链接4个过程如下: 处理源代码文件中的以"#"开头的预编译指令。规则如下: "#defin…
iOS - 聊聊 autorelease 和 @autoreleasepool
作为 iOS 开发者,在面试过程中经常会碰到这样一个问题:在 ARC 环境下autorelease对象在什么时候释放?如果你还不知道怎么回答,或者你只有比较模糊的概念,那么你绝对不能错过本文。 本文将通过Runtime objc4-756.2版本源码、macOS 与 iOS 工…
iOS底层原理总结篇-- 深入理解 KVC\KVO 实现机制
... 一. KVO的实现原理 1. 什么是KVO? 要监听Person中的age属性,我们就创建一个observer用来监听age的变化,当我们age一旦发生改变,就会通知observer。 2. KVO简单的实现 我们先简单的回顾一下 KVO的代码实现。 3. KVO存在的…