- 博客(180)
- 资源 (1)
- 收藏
- 关注
原创 [iOS学习笔记]浅谈RunLoop底层
RunLoop是iOS开发中比较重要的知识点,它贯穿程序运行的整个过程。它是线程基础架构的一部分,是一种保障线程循环处理事件而不会退出的机制。同时也负责管理线程需要处理的事件,让线程有事儿时忙碌,没事儿时休眠。每个线程都有一个关联的RunLoop对象,子线程的RunLoop是需要手动开启的,主线程的RunLoop作为应用启动的一部分由系统自动开启。
2023-11-30 21:57:40
380
原创 [iOS开发]iOS中TabBar中间按钮凸起的实现
在日常使用app的过程中,经常能看到人家实现了底部分栏控制器的中间按钮凸起的效果,那么这是怎么实现的呢?
2023-11-04 22:30:49
1697
原创 [OC学习笔记]分类和关联对象源码解析
我们平时在开发的时候经常会使用分类来添加方法、协议、属性,但在添加属性的时候属性是不会自动生成成员变量的,这时候我们就需要关联对象来动态存储属性值。分类@interface NSObject(Study)@property (nonatomic, strong) NSObject *obj1;@property (nonatomic, strong) NSObject *obj2;- (void)instanceMethod;+ (void)classMethod;@endstati
2022-10-10 11:48:27
709
原创 [OC学习笔记]weak的实现原理
了解了weak的实现原理,探究了SideTables里weak_table的实现,了解了weak自动置nil的时机
2022-07-31 19:30:14
563
原创 [OC学习笔记]对象的本质探索
对象的本质Objective-C 代码的底层都是通过 C/C++ 实现,所以 Objective-C 面向对象是基于 C/C++ 数据结构实现。
2022-06-12 11:27:09
449
原创 [iOS开发]Masonry源码学习
苹果提供的自动布局(Auto Layout)能够对视图进行灵活有效的布局。但是,使用原生的自动布局相关的语法创建约束的过程是非常冗长的,可读性也比较差。使用原生的自动布局语法,对于如此简单的一个布局,也是非常冗长的。如果使用 VFL(Visual Format Language)可以有效减少冗余,但是其 ASCII 类型语法使得编译器无法做类型检查,存在一定的安全隐患。Masonry 的目标其实就是为了解决原生自动布局语法冗长的问题。
2022-06-02 20:00:00
439
原创 [iOS开发]Tagged Pointer对象
tagged pointer是一种特殊的“指针”,其特殊在于,其实它存储的并不是地址,而是真实的数据和一些附加的信息。...
2022-05-31 15:27:51
245
C语言学生管理系统(字符界面、链表实现)
2022-05-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人