摘要:
KVO,全称为Key-Value Observing,是iOS中的一种设计模式,用于检测对象的某些属性的实时变化情况并作出响应。网上广为流传普及的一个例子是利用KVO检测股票价格的变动,例如这里。这个例子作为扫盲入门还是可以的,但是当应用场景比较复杂时,里面的一些细节还是需要改进的,里面有多个地方存... 阅读全文
摘要:
OC是运行时语言,只有在程序运行时,才会去确定对象的类型,并调用类与对象相应的方法。利用runtime机制让我们可以在程序运行时动态修改类、对象中的所有属性、方法,就算是私有方法以及私有属性都是可以动态修改的。本文旨在对runtime的部分特性小试牛刀,更多更全的方法可以参考系统API文件,demo... 阅读全文
摘要:
想到要如何为所有的对象增加实例变量吗?我们知道,使用Category可以很方便地为现有的类增加方法,但却无法直接增加实例变量。不过从Mac OS X v10.6开始,系统提供了Associative References,这个问题就很容易解决了。这种方法也就是所谓的关联(association),我 阅读全文
摘要:
UITableView作为ios中使用最频繁的控件之一,其性能优化也是常常要面对的,尤其是当数据量偏大并且设备性能不足时。本文旨在总结tableview的几个性能优化tips,并且随着认识的深入,本文将持续更新,力求将tableview的优化做到极致!Let`s begin!治病就要先知道病因,我们... 阅读全文
摘要:
在APPLE的官方Demo:UICatalog中实现UISearchBar模糊搜索功能是这么做的:1 - (void)viewDidLoad {2 [super viewDidLoad];3 4 self.allResults = @[@"Here's", @"to", @"the"... 阅读全文
摘要:
在上一篇专题文章【原】iOSCoreAnimation动画系列教程(一):CABasicAnimation【包会】中我们学习了iOS核心动画CoreAnimation中CABasicAnimation动画的使用方法。CABasicAnimation已经可以应付一些比较简单的应用场景了,比如vie... 阅读全文
摘要:
这几天突然发现手上的macbook pro笔记本不能睡眠了,就算合上盖子也是如此。有没有进入睡眠可以观察右下角的呼吸灯,如果呼吸灯常亮则说明有问题。所谓“工欲善其事,必先利其器”,攻城狮想敲更多更好的代码就必须爱好手里的战斗设备,天天不睡眠不仅耗电,更要命的是会让book的寿命大打折扣。现在我就放点... 阅读全文
摘要:
本文的最新版本已经发布在简书[编程小翁]上,强烈建议到上查看简书,[点击这里跳转]。 在iOS中,图形可分为以下几个层次: 越上层,封装程度越高,动画实现越简洁越简单,但是自由度越低;反之亦然。本文着重介绍Core Animation层的基本动画实现方案。 在iOS中,展示动画可以类比于显示生活中的 阅读全文
摘要:
概述在正常的使用场景中,我们处理了比较多的矩形区域内触摸事件,比如UIButton、UIControl。一般来说,这些控件的图形以及触摸区域都是矩形或者圆角矩形的。但是在一些特殊应用场景中我们有时不得不面对这样一种比较严苛的需求,比如要求程序只对某个圆形、五角形等非常规区域的点击事件进行处理,这就需... 阅读全文
摘要:
- (void)statusBarOrientationChange:(NSNotification *)notification{ WClassAndFunctionName; UIInterfaceOrientation oriention = [UIApplication shar... 阅读全文