iOS-高级技能
SSIrreplaceable
学最好的别人,做最好的自己。
展开
-
Objective-C 类型编码
在开发的时候我们会遇到后跟 ObjCType:(const char *)types 的方法。 如: + (NSValue *)valueWithBytes:(const void *)value objCType:(const char *)type; + (nullable NSMethodSignature *)signatureWithObjCTy原创 2016-11-28 14:40:15 · 3853 阅读 · 0 评论 -
NSInvocation的基本使用
一. NSInvocation简介在iOS开发中,可以直接调用方法的方式有两种:performSelector:withObject: 和 NSInvocation。 performSelector:withObject:使用简单,但缺点是只能传一个参数,大于2个参数就无法使用;NSInvocation就不一样,功能更加强大,但实现有点复杂。在IOS4.0之后,这两种直接调用对象消息的方法,原创 2016-11-28 12:20:47 · 8760 阅读 · 1 评论 -
浅谈父子控制器
一. 什么是父子控制器?一个控制器通过addChildViewController:方法添加多个控制器,被添加的控制器称为子控制器,添加多个子控制器的控制器称为父控制器。二. 父子控制器关系有什么作用?(1). 父控制器处理的事件会自动传给子控制器 (2). 子控制器处理的事件会自动传给父控制器 (3). 子控制器可以通过属性parentViewController获取父控制器原创 2016-11-11 16:55:19 · 2382 阅读 · 0 评论 -
关于RunLoop部分源码的注释
RunLoop源代码是开发的,是Core Fundation框架的一部分,可以在线查看和或者下载。本篇博文是对RunLoop部分源码进行注释,因本人知识有限,如有注释不妥的地方请指教。#if DEPLOYMENT_TARGET_WINDOWS// kNilPthreadT 为空的线程static pthread_t kNilPthreadT = { nil, nil };#define pth原创 2016-12-21 23:17:55 · 2167 阅读 · 0 评论 -
RunLoop的学习总结
一. RunLoop相关概念1. 什么是RunLoopRunLoop与线程相关且是基础框架的一部分。一个RunLoop就代表一个事件处理循环,它可以不停的调度工作以及处理输入事件。使用RunLoop的目的是有效的控制线程的执行和休眠,让线程在有工作的时候忙于工作,而在没工作的时候处于休眠状态。如果不使用RunLoop类似的循环机制,线程执行完当前任务队列中的任务就结束了,程序不能持续运行。也可以把R原创 2016-12-21 23:13:13 · 2087 阅读 · 0 评论 -
GIT-删除远程服务端的文件
1. 在本地仓库A执行以下命令:$ sudo rm test$ git add .$ git commit -m "delete test"$ git push 2. 检查服务器是否还有test.text文件,检测结果是没有的$ git pull注意:在A仓库pull后确实没有了test.text文件,但是在B仓库pull还有test.text文件解释: git add 只会将新建的原创 2017-05-26 09:54:57 · 2856 阅读 · 0 评论