关于两个视图之间的关系判断

位置关系判断

苹果提供了一些基本的关于两个矩形区域相互位置关系的判断方法,还有一些关于点CGPoint和CGRect之间的关系,点的判断比较容易,这里主要备注一下矩形之间各种情况的判断,主要的相关函数有3个

阅读全文

指间错

  夜幕即将降临,昆虫王国的昆虫们也纷纷来到位于下水道中邻近一个小区出口的一个”黄昏酒吧”,为了今晚的觅食做些准备,放松一下心情并补充一下体力.酒吧里已经陆陆续续来了不少客人了.

“依然记得从你口中说出再见坚决如铁
昏暗中有种烈日灼身的错觉
黄昏的地平线 划出一句离别
爱情进入永夜”

阅读全文

马侬传

写字楼里写字间,写字间里程序员;
程序人员写程序,又拿程序换酒钱;
酒醒只在网上坐,酒醉还来网下眠;
酒醉酒醒日复日,网上网下年复年;
但愿老死电脑间,不愿鞠躬老板前;
奔驰宝马贵者趣,公交自行程序员;
别人笑我忒疯癫,我笑自己命太贱;
不见满街漂亮妹,哪个归得程序员.

阅读全文

ios开发选择系列-6:用storyboard还是用xib或者代码写ui

自从苹果公司发布了iphone6,iphone6 plus以及apple watch后,苹果的开发人员也不得不面对适配不同分辨率的问题了,从前纯代码写ui的是不是到了死路一条的地步呢?究竟哪种方式做ui比较合适?成了许多人不得不面对的问题了,目前主流做ui的方式就是3种,storyboard,xib和纯代码,这3种方式我都粗浅的用过,我就简单的说说自己的个人感受

阅读全文

ios7的UINavigationViewController转场动画

ios7中的UINavigationController新增加了两个协议方法,只要实现这两个协议方法就能够自由的定制nvigationController的转场动画

阅读全文

XCode工程内多Targets教程

相信很多人都注意到XCode中, 有个Target的概念. 这在很多地方都有所体现, 比如打开一个工程后, 左侧的列表中有Targets一项, 而在工程界面的顶部菜单中, project里面也有多个涉及到Target的项目, 那么这个Target到底是什么呢?

阅读全文

xcode一些参数及命令

xcode其实有很多的命令可以帮助大家更好的查看一些信息,有些命令在调试bug的时候非常有用,这里记录几个我用过的命令

阅读全文

ios开发选择系列-5:用nil还是用Nil或者NULL

很简单,如果你是要判断(或者赋值)一个实例是否存在就用nil,如果你是要判断一个类是否存在就用Nil,如果你要判断一个基本数据类型,比如

阅读全文

ios开发选择系列-4:用category类别还是继承

打个比喻来形容类别与继承的区别,苹果的产品线有一款产品叫ipod,除了打电话之外,其他功能和iphone差不多,但是价格却只有iphone的三分之一左右,于事就有厂家生产出一款ipod的用的外壳,套上这个外壳后ipod就能打电话了,这就和类别相似,在原来的基础上拓展出新的功能,但是原来的产品丝毫没变,因为你把外壳拿掉之后他还是一个ipod. 而继承的话就好像把ipod打开,直接替换里面的主板,芯片等硬件,使其拥有你想要的功能. 所以很容易得出结论,一般情况下用类别是首选(苹果官方也是推荐用类别),用Category去重写类的方法,仅对本Category有效,不会影响到其他类与原有类的关系。但是如果需要在重写的时候,还要调用原来的方法,就需要用继承了。分类是完全重写,无法调用原来的同名方法。

阅读全文

ios开发选择系列-3:用通知中心还是用代理或者kvo

这两者都能实现在不同的类之间传递参数及事件,但是用通知中心很难把握应用的执行流程。UserInfo dictionaries的keys到处传递导致失去了同步,而且在公共空间需要定义太多的常量。对于一个工作于现有的项目的开发者来说,如果过分的使用通知中心,那么很难理解应用的流程,所以我觉的一个命名好的协议以及协议方法定义,对于清晰的理解类间的通信是很容易的,协议发生改变以及实现都可通过编译器检查出来,这样大大降低了程序crash的机会.当然会有delegation模式不适合的例外情况出现,而且notification可能更加有效。例如:应用中大多数的类需要知道一个事件。然而这些类型的场景很少出现。另外一个例子是当你建立了一个架构而且需要通知该事件给正在运行中应用。所以大多数情况下建议使用delegate

阅读全文