
iOS | 事件传递及响应链
试想一下假如你是一台手机

试想一下假如你是一台手机

+ (instancetype)sharedInstance {static <#Class Name#> *instance = nil;static dispatch_once_t onceToken;dispatch_on...

1.__block和__weak修饰符的区别: 1.__block不管是ARC还是MRC模式下都可以使用,可以修饰对象,还可以修饰基本数据类型。 2.__weak只能在ARC模式下使用,也只能修饰对象(NSString),不能修饰...

方法一,通过控制器继承或分类实现: 在UITabBarController 的子类或分类中实现 1 - (BOOL)shouldAutorotate {2 return [self.selectedViewController should...

CoreLocation框架 定位(iOS8.0- iOS8.0- 的定位实现 设置授权说明(段子写得好,用户授权的概率大) 设置位置更新的距离过滤(防止过于频繁的调用代理方法) 设置定位精度(精度越高,耗电越快。所以要根据需求选择合适的定...

前言: 每一个技术都是一种问题的解决思路和方案,所以学习一个技术的时候,首先要去思考一下这个技术是基于什么样的问题场景下产生的,这样才能对该技术的特点以及应用有比较好的理解; Runloop 的出现是为了解决什么样的问题: 每一个应...

1.在cell里,.h写一个Block. @property (nonatomic,copy)void(^telephoneBlock)();2. 在cell里,.m写一个点点击事件. – (IBAction)didclickP...

iOS OC类原理二 前言: 1. `cache_t cache LLDB` 简单分析 2.`cache_t cache` 流程源码分析 `cache_fill_nolock`详细流程: 前言: 上一篇探索了 属性 成员变量 方法 在 类 ...

有时候我们会有这样的需求:分别异步执行2个耗时任务,然后当2个耗时任务都执行完毕后再回到主线程执行任务。这时候我们可以用到 GCD 的队列组。使用场景: 同时上传多个图片,所有图片上传完成之后去请求服务器上传图片地址。 dispatch_g...

记录数据: 1)数据在app关掉,下一次打开还在; 存数据: NSString *last_uuid = [NSString stringWithFormat:@\"%s\", uuid]; NSUserDefaults *u...