- 博客(11)
- 收藏
- 关注
转载 KVO的概述与使用
一、概述KVO,即:Key Value Observing,直译为:基于键值的观察者。它提供一种机制,当指定的对象的属性被修改后,对象就会接受到通知。简单的说就是每次指定的被观察的对象的属性被修改后,KVO就会自动通知相应的观察者。在下文的示例中。图书(Book类),就是个实体。它的属性有书名(name)和价格(price)。那么,在界面开发中,可能有多个视图和这个实体有关
2013-08-08 16:53:22
482
转载 iPhone开发之消息通信机制NSNotificationCenter
iPhone开发之消息通信机制NSNotificationCenter是本文要介绍的内容,主要是来学习消息通信机制NSNotificationCenter的学习。最近写程序需要用到这类,研究了下,现把成果和大家分享。NSNotificationCenter是专门供程序中不同类间的消息通信而设置的,使用起来极为方便,长话短说。设置通知,就是说要在什么地方(哪个类)接受通知,一
2013-08-08 16:22:17
464
转载 iOS多线程编程之Grand Central Dispatch(GCD)介绍和使用
介绍:Grand Central Dispatch 简称(GCD)是苹果公司开发的技术,以优化的应用程序支持多核心处理器和其他的对称多处理系统的系统。这建立在任务并行执行的线程池模式的基础上的。它首次发布在Mac OS X 10.6 ,iOS 4及以上也可用。设计:GCD的工作原理是:让程序平行排队的特定任务,根据可用的处理资源,安排他们在任何可用的处理器核心上执行任务。一个任务可
2013-08-07 16:06:24
411
转载 iOS多线程编程之NSThread的使用
NSThread的使用2.1 NSThread 有两种直接创建方式:- (id)initWithTarget:(id)target selector:(SEL)selector object:(id)argument+ (void)detachNewThreadSelector:(SEL)aSelector toTarget:(id)aTarget withObject:(id
2013-08-07 16:04:26
456
转载 iOS多线程编程之NSOperation和NSOperationQueue的使用
使用 NSOperation的方式有两种,一种是用定义好的两个子类:NSInvocationOperation 和 NSBlockOperation。另一种是继承NSOperation如果你也熟悉Java,NSOperation就和java.lang.Runnable接口很相似。和Java的Runnable一样,NSOperation也是设计用来扩展的,只需继承重写NSOp
2013-08-07 16:02:47
463
转载 初识block
本文转自破船的博客:小引本周末微博上朋友发了一个关于block的MV,只能说老外太逗了。大家也可以去看看怎么回事:Cocoa Got Blocks。虽然之前也有接触过block,不过没有深入完整的学习过,借此机会来学习一下,顺便翻译几篇block相关的文章,本文是第一篇,算是block的入门。本文的最后延伸阅读给出了4篇相关文章,不出意外的话,本周大家能看到对应的中文版。 目录:
2013-08-05 22:49:04
423
原创 atomic,nonatomic 是干什么的?
atomic: 原子操作(原子性是指事务的一个完整操作,操作成功就提交,反之就回滚. 原子操作就是指具有原子性的操作)在objective-c 属性设置里面默认的就是atomic,意思就是setter/getter函数是一个原子操作,如果多线程同时调用setter时,不会出现某一个线程执行完setter所有语句之前,另一个线程就开始执行setter,相当于函数头尾加了锁. 这样的话
2013-07-30 17:58:31
571
转载 NSObject 有个copyWithZone是什么作用?
From: http://oasku.com/?q-104.html 首 先,从copy开始说,简而言之,copy的目的就是生成一个新的实例,然后把其成员都按原实例赋值。对于非指针型的成员,比如BOOL, int, float,这样的赋值可以直接进行。但是对于指针型的数据,比如Objc中用到的对象,就有Deep Copy和Shallow Copy的区别——这个和在C++
2013-07-30 17:37:05
3825
转载 ios 深浅拷贝学习
首先我们需要有这样的一个前提: [array addObject:obj];这样obj的引用计数会增加1,如果使用remove则obj的引用计数会减一。ios对集合的内存处理就是这样的。那么,假设obj只被array拥有:id temp = [array objectAtIndex:0];[array removeObjectAtIndex:0];如果你再要使用te
2013-07-30 17:35:43
367
原创 retain,copy,assign哪些事儿
assign:直接赋值,当数据int,float原生类型时,可以使用assign。 retain:使用引用计数reference counting,当内存分配并赋值给a的时候,引用计数是1,当a赋值给b时引用计数是2。如果a不再使用这块内存,把引用计数减1。 b如果不再使用这块内存也把引用计数减1。当引用计数为0,该内存不被任何指针所引用。系统可把直接释放掉。 @property(nonatomi
2013-07-30 17:28:49
511
转载 NSString,NSMutableString,NSValue,NSArray 用法
//一、NSString /*----------------创建字符串的方法----------------*/ //1、创建常量字符串。 NSString *astring = @"This is a String!"; //2、创建空字符串,给予赋值。 NSString *astring = [[NSString alloc] init]; astring
2013-07-29 22:18:29
425
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人