Bloodline's Blog Notes and thoughts from Bloodline

关于copy

        前言 这也是一个丢人的问题。真的清楚某些属性为什么要用copy么? 讨论 下面的代码输出什么? NSString *str = @"ABC"; Person *p = [[Person alloc] init]; p.stringStrong = str; p.stringC...

再说iOS的内存管理

        前言 关于runtime和runloop总觉得已经了解的足够了,但是跟别人聊的时候还是会遇到不确定的情况。太丢人了。 讨论 看这样一段代码,分别打印的是什么(ARC)? __weak id weakObj;//使用weak,防止对引用计数器和内存释放产生影响 __weak id wea...

JSPatch

        前言 JSPatch用的越来越广泛。先记录下集成及使用的方式。由于公司没有提供专门的接口获取js脚本,而且也没有安全的访问方式,所以还是先试用JSPatch平台来实现吧。官方的文档写的很清楚,只记录遇到的坑。 集成 坑一: 我下载的时候提示是这个样子。 我还纳闷怎么没有压缩,于是...

Swift的单例模式

        单例对象可以我们使用一个类获取对象时,多次创建对象或者多次获取对象,得到的都是同一个对象。无论使用音频特效还是网络工具,我们都可以在我们的应用中使用统一的方式来获取单例资源或服务。 OC下的单例 OC中可以通过在 dispatch_once 函数的Block中调用初始化方法来实现单例。 ...

关于Swift的使用tips

        前言 今天被打击了。 凡事往前看。 回来继续混编。不要以为熟悉了OC和UIKit,看看Swift语法就可以无缝接入Swift开发,至少这个坑填了好一会。真正没有用过Swift的人,才会觉得Swift简单吧。相比OC语法更简练,同时吸收了多门流行语言的优点,可选绑定和 guard 的用法看的我...

升级Cocoapods 1.0的经历

        前言 Cocoapods是比较好用的第三方框架管理工具。唯一蛋疼的是速度update的时候速度太慢,当然是用离线模式(–no-repo-update)可以加快速度,但是真正需要更新的时候,真的就只能花半天时间喝茶聊天了。好消息是1.0的版本明显减少了update的时间,实在忍不住去升级。 ...

iOS项目中多target的配置

        背景 首先吐槽一下,最近公司接了几个功能相似的外包项目,整天累死累活真成了外包码农了。虽说奖金丰厚,但是这么着下去还真不是办法。 思路 功能相似,那就需要尽可能的多复用代码,目前考虑到的最理想的方案是基于multiple targets,就是利用多个target编译成不同的项目。这对于简...

Could not find Developer Disk Image

        前言 在调试iOS 9.3版本的时候遇到了Could not find Developer Disk Image问题。之前每次升级都会遇到这个问题,但是都没有整理,这次整理一下。 Could not find Developer Disk Image是由于真机系统过高或者过低,Xcode中...

UITableView快速参考

        属性 DataSource Method #pragma mark 返回分组数 - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView; #pragma mark 返回每组行数 - (NSInteger)tabl...

Mac下iPhone录屏和共享iPhone屏幕

        最近才了解到,Mac下iPhone录屏和共享iPhone屏幕如此的简单。那就是使用QuickTime Player的录屏功能啦。当然iOS设备应该都可以。 前提 软件要求:OS X 需要升级为 Yosemite;iOS 需要升级至 iOS 8。 步骤 使用 Lightn...