1. frame布局。 性能相对比较好,但当views比较多,view依赖关系比较复杂或适配不同机型时,处理起来会比较繁琐,代码可读性低。特别在数据变化或横竖屏切换导致界面布...
1. frame布局。 性能相对比较好,但当views比较多,view依赖关系比较复杂或适配不同机型时,处理起来会比较繁琐,代码可读性低。特别在数据变化或横竖屏切换导致界面布...
前言 做了这些年iOS开发,其实越来有点越抵触了,越不爽了,单说Xcode从起初的4点的版本安装包就几个G,一步步的增大,安装包文件一二十个G,其它缓存模拟器乱七八糟的,用一...
在项目中我们经常用到weak指针,其可以保证在指向的对象释放后,weak指针自动置为nil,以防止崩溃,因为在OC中向nil发送消息是没有任何处理的。通过__weak、pro...
前言 虽然写 fishhook 原理的文章有很多,但是总觉得不够简单直观。大部分都是罗列大堆源码进行讲解,看得人云里雾里。 因此,本文将完全抛开源码,旨在简单清晰,直击要害,...
最近参照 [https://www.mikeash.com/pyblog/friday-qa-2017-06-30-dissecting-objc_msgsend-on-ar...
在项目当中经常看到一些非常好看的动画,于是乎自己也利用了一下业余时间把这块东西整理 先看一个简单的结构图 CAAnimation本身不能使用,需要使用他的子类。 CAProp...
相关文献:iOS 内存管理底层分析(一)- 内存相关[https://www.jianshu.com/p/bc298c7299e6]iOS 内存管理底层分析(二)- Auto...
一、函数的派发方式 swift函数的派发机制有三类:static直接派发(静态)派发、table函数派发,message消息派发。 直接派发也称为静态派发,指令集少,还会进行...
__block __block可以用于解决block内部无法修改auto变量值的问题 __block不能修饰全局变量,静态变量 编译器会将__block变量包装成一个对象 问...