- 博客(8)
- 收藏
- 关注
翻译 Podspec 语法
说明文件(Sepcification)说明文件描述了一个版本的pod库。它描述了库的详内容,诸如去哪里获取源码,使用什么文件,应用编译设置,以及其它的一般元数据如它的名字、版本和描述。一个基本的说明文件能使用pod spec create命令生成。说明文件的DSL(描述语言)提供了很强的扩展性和动态性,而且,DSL采用了"协议优于配置"的规则,因此它能非常地简单
2018-02-01 15:08:45 956
原创 oc runtime之weak
二、weak声明了弱引用,实际上调用了objc_initWeak函数/** * Initialize a fresh weak pointer to some object location. * It would be used for code like: * * (The nil case) * __weak id weakPtr; * (The non-nil case)
2017-11-23 16:56:21 626
原创 oc runtime之strong
当调用object_setIvar时,我们看到了如下的代码:id *location = (id *)((char *)obj + offset); switch (memoryManagement) { case objc_ivar_memoryWeak: objc_storeWeak(location, value); break; case objc_ivar
2017-11-23 12:17:12 246
原创 RAC热信号
首先来看如下代码发布信号: RACSignal *signal = [RACSignal createSignal:^RACDisposable *(id<RACSubscriber> subscriber) { [subscriber sendNext:@1]; [[RACScheduler mainThreadScheduler] afterDelay:1
2016-10-18 14:24:07 387
原创 RAC冷信号
概念首先,信号使用发布订阅模式。冷信号:订阅者订阅了信号,它才会发布,并且立即把信号中的所有操作发布。 热信号:信号发布与订阅者订阅与否无关,订阅者可以在信号的发布过程中订阅。例子分析冷信号 冷信号像调用函数一样,订阅就是去调用。看下面的代码:RACSignal *signal = [RACSignal createSignal:^RACDisposable *(id<RACSubscrib
2016-10-13 11:29:04 378
原创 @weakify和@strongify
提到OC中的block,它像函数指针,当然了,我们知道OC其实都是结构体,所以也就是结构体指针了,我们暂不讨论LLVM的Clang前端是如何转换OC代码的。一般来说,引入ARC后,出现内存泄露的情况少很多了,很容易出现的地方还是在于使用block造成的循环引用,即block内捕获了外部实例变量,为了保证block内部变量一直存在,默认对其进行了强引用,如果在这个变量的强引用链上,也引用
2016-07-18 14:22:56 2272
原创 瀑布流的加载更多
我们做瀑布流,一般使用UICollectionView这种集合视图,当然了,它不仅仅能做瀑布流,根据不同的layout,将各视图collect到一起各种的布局,并能做到视图复用,可谓是非常强大了。对于加载更多,我们遇到了问题。1、当下页的数据接在上一页调用reloadData时,如果你正在滚动collectionView,它就会小小的卡顿。2、如何做到边滑动边加载下边页面,
2016-06-27 16:19:59 1610
原创 xcodebuild 打包
最近研究了一下使用xcodebuild打包ipa,由于我们工程使了cocoapods,发现了几个问题问题一:使用workspace时总链接不上pod里的库,ld: libray not found for -lXXX问题二:使用xcrun packageApplication打包时,出现ResourceRules.plist: cannot read resources于是。。
2016-04-08 14:14:29 466
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人