- 博客(10)
- 收藏
- 关注
原创 KVO详解
一、KVO是什么? KVO 是 Objective-C 对观察者设计模式的一种实现。【另外一种是:通知机制(notification)】; KVO提供一种机制,指定一个被观察对象(例如A类),当对象某个属性(例如A中的字符串name)发生更改时,对象会获得通知,并作出相应处理;【且不需要给被观察的对象添加任何额外代码,就能使用KVO机制】在MVC设计架构下的项目,KVO机制很适合实现mode模型
2017-09-05 17:44:04 593
原创 KVC详解
KVC(Key-value coding)键值编码,单看这个名字可能不太好理解。其实翻译一下就很简单了,就是指iOS的开发中,可以允许开发者通过Key名直接访问对象的属性,或者给对象的属性赋值。而不需要调用明确的存取方法。这样就可以在运行时动态在访问和修改对象的属性。而不是在编译时确定,这也是iOS开发中的黑魔法之一。很多高级的iOS开发技巧都是基于KVC实现的。目前网上关于KVC的文章在非常多,有
2017-08-07 15:46:59 952
转载 iOS触摸点击事件之runloop做了什么?
事件的产生我们都知道,当点击屏幕时,会产生一个事件,也就是UIEvent对象//事件类型@property(nonatomic,readonly) UIEventType type @property(nonatomic,readonly) UIEventSubtype subtype //事件产生的时间@property(nonatomic,readonly) NSTimeInt
2017-08-02 18:34:25 3441 1
转载 GCD详解
导语:在iOS中,多线程方案有四种:pthread、NSThread、NSOperation & NSOperationQueue 和 GCD,但是开发中GCD使用得最多,本文主要总结一下我使用GCD的情况。一、GCD(Grand Central Dispatch)概述1、基本概念GCD允许程序将任务切分为多个单一任务,提交至Dispatch Queue,然后系统调度线程,实现并发或者串行地执行任务
2017-08-02 10:03:43 853
原创 GCD信号量—dispatch_semaphore详解与使用
一 什么是信号量? dispatch_semaphore信号量是一种基于计数器的一种多线程同步机制。 简单来说就是控制访问资源的数量,比如系统有两个资源可以被利用,同时有三个线程要访问,只能允许两个线程访问,第三个应当等待资源被释放后再访问。注意:再GCD中,只有调度的线程在信号量不足的时候才会进入内核态进行线程阻塞。二 如何使用信号量? 主要三个函数: dispatch_semaph
2017-07-31 17:16:08 1315
原创 WebSocket 和socket、HTTP的区别和联系
上一篇介绍了WebSocket的原理和使用,这一篇介绍一下它和socket、http的区别及联系。一、WebSocket 是什么? WebSocket是HTML5中的协议。HTML5 Web Sockets规范定义了Web Sockets API,支持页面使用Web Socket协议与远程主机进行全双工的通信。它引入了WebSocket接口并且定义了一个全双工的通信通道,通过一个单一的套接字在We
2017-06-23 15:28:15 28882 6
原创 iOS SRWebSocket原理分析及API使用
以前浏览器实现即时通讯是通过轮询(long poll 和 ajax)技术解决,但是有很大的弊端,比如通讯延时、流量浪费等。直到WebSocket出现才有助于解决这一问题。WebSocket protocol 是HTML5一种新的协议。它实现了浏览器与服务器全双工通信(full-duplex)。一开始的握手需要借助HTTP请求完成。
2017-06-22 15:41:46 4892 1
原创 iOS crash捕获异常崩溃日志
在APP发布到线上后,会出现用户使用时闪退的糟糕情况。为了改进用户体验,就需要收集app崩溃的日志信息,来完善应用。 像数组越界、字典操作对象值为nil等都会发出一般异常,利用 NSSetUncaughtExceptionHandler就能捕获。但是像访问错误内存块、引用野指针等抛出的是Signal,要做Signal处理。
2017-06-21 15:01:35 1066
原创 iOS捕捉截屏事件并展示截图
摩拜单车、微信的截屏就做的比较人性化。 现在很多APP开始支持用户截屏后,主动获取截图并弹出分享视图,这样用户就不用去相册去找了,感觉体验不错,今天就分享一下 截屏开发的心得,希望能帮助iOS的朋友。iOS7之后,苹果开放出一个通知:UIApplicationUserDidTakeScreenshotNotification,截屏时系统就会发出这个通知,需要你注册这个通知,就能捕捉到截屏图片。下面
2017-06-16 15:17:10 5628 1
原创 iOS自定义alertView提示框
iOS UIKit框架下自带的UIAlertView在功能或者美观上,有的时候并不能满足我们的开发需求,这个时候,就可以自定义alertView。我在这里写了一个简单的自定义alertView的Demo,希望能帮助到iOS开发的小伙们。话不多说,直接上代码:
2017-06-07 17:51:07 2531
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人