摘要:
+load方法 在app启动的时候各个类的+load方法都会被调用,+load方法不是通过消息机制调用的,它是直接调用的,因此无论是在子类或者category中复写此方法,复写的+load方法都会被调用,查看runtime的代码可知调用的顺序为 父类->子类->分类。(原因是runtime会把所有类
阅读全文
posted @ 2018-09-23 17:21
ximenchuixie
阅读(124)
推荐(0)
摘要:
xcrun -sdk iphoneos clang -arch x86_64 -rewrite-objc Person+Test.m clang -rewrite-objc -fobjc-arc -stdlib=libc++ -mmacosx-version-min=10.7 -fobjc-runt
阅读全文
posted @ 2018-09-18 15:18
ximenchuixie
阅读(184)
推荐(0)
摘要:
extension是在编译的时候就决定了的,跟普通的头文件是一样的,所以可以添加属性、实例变量、方法。并且添加extension的前提是你有这个类的源代码。 category是在程序运行的时候才决定的,程序运行时才会把category中定义的方法加到类对象中。给类添加category时不需要有源码。
阅读全文
posted @ 2018-09-09 23:10
ximenchuixie
阅读(247)
推荐(0)
摘要:
实例对象调用class方法时返回这个实例对象的isa指针,也就是对应的类对象; 类对象调用class方法时返回这个类对象本身。 (注:如果想一直获得一个类的类对象,也就是isa指针,可以调用runtime的object_getClass方法。) 例: Person *p = [Person new]
阅读全文
posted @ 2018-09-09 22:40
ximenchuixie
阅读(118)
推荐(0)
摘要:
假设有一个viewControllerA,我们想在viewControllerA中添加viewControllerB,需要执行以下方法: [viewControllerA addChildViewController:viewControllerB]; [viewControllerA.view a
阅读全文
posted @ 2018-09-07 18:02
ximenchuixie
阅读(97)
推荐(0)
摘要:
用rename命令 如果没装的话执行下面这个命令安装rename brew install rename rename 's/^/logo_/' *.png
阅读全文
posted @ 2018-09-07 01:30
ximenchuixie
阅读(397)
推荐(0)
摘要:
block原理 block的本质是一个结构体,包含引用的外部变量及一个需要执行的函数的函数指针,在内存中可以有三个位置,即堆上、栈上和全局区(静态区)。当block中没有引用外部变量时,block的位置在全局区,当block中访问外部变量时,MRC下block默认在栈区,ARC下block默认会从栈
阅读全文
posted @ 2018-09-04 18:03
ximenchuixie
阅读(444)
推荐(0)
摘要:
手动签名:需要手动生成p12文件(私钥),然后将对应的公钥上传到开发者网站,生成证书,进一步生成对应的描述文件,然后在xcode中手动指定描述文件,这个描述文件中包含与本地p12文件对应的证书。 自动签名:xcode自动帮你生成p12文件(私钥),然后去开发者网站找包含对应的证书(公钥)的描述文件,
阅读全文
posted @ 2018-08-28 09:01
ximenchuixie
阅读(1468)
推荐(0)
摘要:
简单的说,runloop是一个事件循环的机制,同时能够保活线程。iOS中每个线程都对应一个runloop,主线程的runloop默认开启,其他线程的runloop默认关闭,线程与runloop是一一对应的关系,子线程的runloop会在第一次调用获取当前runloop的方法时([NSRunLoop
阅读全文
posted @ 2018-08-21 11:45
ximenchuixie
阅读(451)
推荐(0)
摘要:
NSNotification处理过程是一个同步的过程。它的消息回调函数执行的线程跟发送消息代码(也就是postNotification)所在的线程相同,一个Notification发出后,在回调函数执行完成后,后面的代码才会继续执行。如果有多个回调函数监听同一个消息,那么在消息发出后,各个回调函数会
阅读全文
posted @ 2018-08-16 13:48
ximenchuixie
阅读(76)
推荐(0)