Notes and thoughts from Tony

ReactiveCocoa操作方法

        ReactiveCocoa操作须知 所有的信号(RACSignal)都可以进行操作处理,因为所有操作方法都定义在RACStream.h中,因此只要继承RACStream就有了操作处理方法。 ReactiveCocoa操作思想 运用的是Hook(钩子)思想,Hook是一种用于改变API(应...

ReactiveCocoa用法和宏

        常见用法 之前提到了RAC可以代替代理、KVO等。现在来看看具体用法。 代替代理: rac_signalForSelector:用于替代代理。 原理:判断一个方法有没有调用,如果调用了就会自动发送一个信号。 需求:自定义Custom...

高效的Xcode界面快捷设置技巧

        前言 同事过来看我的代码,然后无奈的说,你这屏幕都被导航栏工具栏和调试区沾满了,你看着不憋屈么。我无奈的手忙脚乱的各种command+0调整。接着一想要是能某个操作能快速切换到成不同模式(比如编辑模式下编辑区域最大化,调试模式下调试区自动弹出等等)就好了。 区域和快捷键 Xcode界面的区...

iOS的深复制与浅复制

        不管是集合类对象,还是非集合类对象,接收到copy和mutableCopy消息时,都遵循以下准则: copy返回immutable对象;所以,如果对copy返回值使用mutable对象接口就会crash; mutableCopy返回mutable对象; 非集合类对象的copy与...

JavaScriptCore框架下调试js的心得

        客户端的开发中有部分功能适合使用Hybrid方案,我一直想尝试React Native,无奈前端和安卓的都不配合,iOS这边只能通过JavaScriptCore采用注入jsObj对象的方式来实现js调用OC的方法。虽说实现起来并不困难,但是遇到问题调试起来蛋都碎了。最近看了下js的调试方法,结...

Mac下Sublime Text的配置

        前言 很久以前在Windows下配置过多种插件,后来换了Mac平台有一段时间没用Sublime Text,就没再折腾过了。最近还是回归了Sublime Text,所以趁有空整理下。当然官方文档和官方文档中推荐的非官方文档是最好的资料。 注意:本文没有明确指出的命令和用法都是在Subl...

关于Autolayout和Masonry自动布局的几个坑

        前言 最近遇到一个复杂视图:根控制器里面有上下两个子控制器,子控制器中各自实现类似PageView的视图,然后PageView的每一页是一个WebView,同时中间有个可拖拽的控件,实现上下两个控制器视图的大小调整。采用子控制器的原因是因为防止所有的逻辑代码都混在根控制器中,所以没有使用ni...

ReactiveCocoa简单介绍

        ReactiveCocoa简介 ReactiveCocoa is inspired by functional reactive programming. Rather than using mutable variables which are replaced and modifi...

Swift 4.0 快速参考手册

        前言 马马虎虎过了两遍 Swift,语法还是容易忘,说明还是练得少。为了让练习的时候能够快速适应Swift的风格,根据 raywenderlich 的 Swift 2.0 Cheat Sheet and Quick Reference整理了一份 Swift 快速参考手册。当然不会涉及到详细的...

更新Markdown引擎

        修改kramdown引擎 收到了GitHub Pages的邮件,大概是说,3月1号开始只支持kramdown引擎,代码高亮也要改成Rouge。参考链接:github-pages-now-faster-and-simpler-with-jekyll-3-0 只好再研究下——主要是改为kram...