RN StackNavigator的使用 RN-News一个新闻的demo 此项目是我第一个github分享的demo,也是第一个RN的小项目,主要是用来练手,RN版本为0.52.0,代码中用了免费的集合数据API,过期可能就无效。此demo对于深入研究 RN的意义不大,对于入门级的可以参考,希望能帮助到和我一样的小白。支持IOS和Android,因为有限的API,页面也就这么多了。 在兼容Android过程中遇到了一个坑,在模拟器
Telegram 之 MTProtoKit 架构分析 上回我们对TeamTalk做了一个比较详细的架构分析,并得到了蘑菇街的官方回复,这种态度还是值得很多公司技术运营学习的。本打算对Telegram的Mac客户端也做一次架构分析的,但发现它的源码比较杂乱,里面混合很多有用没用的文件,另外它的抽象方式也是非常奇怪,继承体系也不是很合理,大致看了下,我就决定放弃了。而无意间却让我点开了它里面所依赖的一个Sub Module:MTProtoKit,我发现这
MAC上如何安装protocolBuf工具 在网上游荡很久,也试了很久,都被坑,最后查了多方资料安装成功一开始我是按照http://m.blog.csdn.net/article/details?id=44244687 来安装,发现brew install automake 报错,automake-1.15 already installed, it's just not linked 说是已安装,但是没有链接,我也是醉了,然后我
Asyncdisplaykit 基本概念 AsyncDisplayKit的基本单元是node. ASDisplayNode是UIView和CALayer的抽象。ASDisplayNode是线程安全的,可以在工作线程中并行地初始化和配置整个node树。 如果保证帧率到60fps,那么所有的layout和drawing需要在16ms内完成。由于系统的开销,留给我们的只有大概10ms。 AsyncDisp
介绍一个轻量级iOS安全框架:SSKeyChain SSKeyChains对苹果安全框架API进行了简单封装,支持对存储在钥匙串中密码、账户进行访问,包括读取、删除和设置。SSKeyChain的作者是大名鼎鼎的SSToolkit的作者samsoffes。
非常有用的文档 别人整理翻译的最新版 iOS 最佳实践,该译本不仅呈现了原版的原汁原味,还扩充了相关的知识点及最新的开发实践,在原版的基础上融合了以往 Objective-C 和最近一些关于 Swift 的内容, 放在这里!https://github.com/KevinHM/ios-good-practices-the-lastest-version2、MVVM架构之Re
AFNetworking速成教程 (2) 你所想到的所有方法,都可以使用AFNetworking来与外界通讯:AFJSONOperation, AFPropertyListOperation 和 AFXMLOperation用来解析结构化数据。UIImageView+AFNetworking用来快捷的填充image view。AFHTTPClient用来进行更底层的请求。用自定义的AFHTTPClient子类来访问
AFNetworking速成教程 (1) AFNetworking速成教程(1) Scott Sherwood on March 26, 2013Tweet这篇文章还可以在这里找到 英语If you're new here, you may want to subscribe to my RSS feed or follow me on Twitter.
CocoaPods的使用 使用CocoaPods来做iOS程序的包依赖管理DEC 2ND, 2012前言每种语言发展到一个阶段,就会出现相应的依赖管理工具, 或者是中央代码仓库。比如Java: maven,IvyRuby: gemsPython: pip, easy_installNodejs: npm随着iOS开发者的增多,业界也出现了为iOS程序提供依
Mac系统获取root权限 mac 修改root密码和ubuntu是一样的。一上来它是没有root用户的。按照一下步骤一步一步创建自己的root用户及密码:(一)sudo passwd root 然后提示你输入当前登录用户密码。(二)通过以后,提示你输入两遍root的密码。这样你就设置好root密码了,可以用root来登录Mac了。(三)利用su root 切入root用户,输入后提示password,输入你刚刚
ios项目的目录结构 转自无网不剩的博客网上相关的资源不多,开源的且质量还不错的iOS项目也是少之又少,最近正好跟同事合作了一个iOS项目,来说说自己的一些想法。 目录结构AppDelegateModelsMacroGeneralHelpersVendorsSectionsResources 一个合理的目录结构首先应
KVO 的概述与使用 一,概述KVO,即:Key-Value Observing,它提供一种机制,当指定的对象的属性被修改后,则对象就会接受到通知。简单的说就是每次指定的被观察的对象的属性被修改后,KVO就会自动通知相应的观察者了。二,使用方法系统框架已经支持KVO,所以程序员在使用的时候非常简单。1. 注册,指定被观察者的属性,2. 实现回调方法3. 移除观察三
KVC KVC,即:Key-value coding,它是一种使用字符串标识符,间接访问对象属性的机制,它是很多技术的基础。主要的方法就两个,setValue:forKey,valueForKey在Programming Guide中说,使用KVC可以简化代码,但事实上使用起来,还是要看具体情况。代码实例:1.首先定义两个DataModel,这种DataModel定义是无法访问属性的
ios 动画详解 所有核心动画的动画类都是从 CAAnimation类继承而来 CAAnimation 实现了 CAMediaTiming协议,提供了动画的持续时间,速度,和重复计数 CAAnimation 也实现了 CAAction协议。该协议为图层触发一个动画动作提供了提供 标准化响应 CATransition
block 语法详解2 BlockApple 在C, Objective-C, C++加上Block這個延申用法。目前只有Mac 10.6 和iOS 4有支援。Block是由一堆可執行的程式組成,也可以稱做沒有名字的Function (Anonymous function)。如果是Mac 10.6 或 iOS 4.0 之前的平台可以利用 http://code.google.com/p/plblocks/ 這個p
block语法详细讲解 ——译自Apple Reference Library《Blocks Programming Topic》简介块对象是C语言的句法和运行时特性。它类似于标准C函数,但可以将代码、变量绑定到堆(heap)、栈(stack)。一个块还维护了一系列的状态,这些状态或数据影响着执行的结果。可以把块组成函数表达式,用于传递给API,或者使用在多线程里。最有用的是回调,因为块在回调时能
GCD 多线程详细 GCD介绍(一): 基本概念和Dispatch QueueGCD提供很多超越传统多线程编程的优势:易用: GCD比之thread跟简单易用。由于GCD基于work unit而非像thread那样基于运算,所以GCD可以控制诸如等待任务结束、监视文件描述符、周期执行代码以及工作挂起等任务。基于block的血统导致它能极为简单得在不同代码作用域之间传递上下文。效率: GCD被实现得如此
线程同步 1:原子操作 - OSAtomic系列函数iOS平台下的原子操作函数都以OSAtomic开头,使用时需要包含头文件。不同线程如果通过原子操作函数对同一变量进行操作,可以保证一个线程的操作不会影响到其他线程内对此变量的操作,因为这些操作都是原子式的。因为原子操作只能对内置类型进行操作,所以原子操作能够同步的线程只能位于同一个进程的地址空间内。2:锁 - NSLock系列对象iOS
performSelectorOnMainThread 和detachNewThreadSelector区别. 举例说明怎么简单的创建一个子线程。用到的类是NSThread类,这里使用detachNewTheadSelector:toTagaet:withObject创建一个线程。函数setupThread:(NSArray*)userInfor。通过userInfor将需要的数据传到线程中。函数定义:-(void)setupThread:(NSArray*)userInfo
GDataXML解析 在IOS平台上进行XML文档的解析有很多种方法,在SDK里面有自带的解析方法,但是大多情况下都倾向于用第三方的库,原因是解析效率更高、使用上更方便,关于IOS平台各种解析XML库的优缺点分析,可以看下这篇文章:http://www.raywenderlich.com/553/how-to-chose-the-best-xml-parser-for-your-iphone-project这里