2012年1月7日

后台程序

摘要: 基本概念:IOS4 以后,引入了多任务的概念。在用户按下home键时,当前的app会立即转入后台模式,不会像IOS4之前那样,立即被系统干掉。app仍然驻留在内存中,并且可以向系统注册执行后台任务,比如播放音乐。但是IOS上的多任务与传统的多任务是不同的,app自身在转入后台之后,是被冻结住的,所注册的后台任务,必须放在独立的线程中,并且任务的类型是固定的。也就是说你所能执行的后台代码是有限制的。基本流程:当用户按下home键时,当前的应用程序就会立即转入后台模式,流程如下:资源释放:当app转入后台模式,系统不会释放app的核心数据,比如自定义的object,view,window,等等这些 阅读全文

posted @ 2012-01-07 21:55 日虾夜饺 阅读(598) 评论(0) 推荐(0) 编辑

Accessor的选择

摘要: object-c有三种property accessors:assign,retain,copy,这里分别说明三种属性方法的实现和区别。assign:就是简单的赋值。这种方法对于传入的参数,没有做任何处理,无法保证传入的数据不会被release,所以一般的类对象,比如NSString,通常不会选择这种类型的方法。但是非类数据,delegate,子view保存父view的句柄等等通常选择的是这个方法. int,bool之类的数据不必多说。这里说明下delegate为什么通常选择assign作为属性方法。假设有一个table controller上面有一个table,毫无疑问的,controlle 阅读全文

posted @ 2012-01-07 21:53 日虾夜饺 阅读(148) 评论(0) 推荐(0) 编辑

UIScrollView的一些特点

摘要: 是个麻烦的控件,这里先问几个问题:1. 如果我触摸一下屏幕,哪个view会最先收到触摸消息呢(touchesBegan)?答案是,如果所有view都是UIView的话,那么最外层的子view会先收到该消息。这个机制就是通过UIView中的hitTest:withEvent: 实现的。这个函数的逻辑是这样的(官方文档):This method traverses the view hierarchy by sending thepointInside:withEvent:message to each subview to determine which subview should recei 阅读全文

posted @ 2012-01-07 21:49 日虾夜饺 阅读(3073) 评论(0) 推荐(1) 编辑

导航