摘要:编写iOS应用程序有何不同1.只能同时运行一个应用程序:当程序不处于活动状态也不是在后台运行时,它不会占用任何cpu资源,因此也会断开网络连接。iOS允许程序在后台进行处理,但要做到这点,开发者需要多做些努力2.只有一个窗口:iOS只允许应用程序操作一个窗口,应用程序与用户的所有交换都在这个窗口中完...
阅读全文
摘要:1.每一个应用程序都有属于自己的UIWindow,UIWindow继承自UIView2.UIView面临的问题: 1.谁来控制UIView之间的切换? 2.谁来管理UIView的生命周期? 3.谁来给UIVIew装配数据? 4.谁来监听UIView的事件?上面三个问题的答案都是:UIViewCont...
阅读全文
摘要:反射:OC反射机制是指:在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性,这种动态获取信息以及动态调用对象的方法的功能成为OC的反射机制。Class反射通过类名的字符串形式实例化对象将类名变成字符串SEL的反射通过方法的字符串形式实例化方...
阅读全文
摘要:NSNumberNSNumber可以将基本数据类型包装成对象,这样就可以间接将基本数据类型存进NSArray,NSDictionary等集合中常见的初始化方法://将一个int类型的数包装成一个number对象NSNumber *number=[NSNumber numberWithInt:10];...
阅读全文
摘要:NSDictionary通过唯一的key找到对应的value,相当于java中的map常见的创建NSDictionary的方法//第一种创建方法,字典是不可变的,初始化之后不可添加删除元素NSDictionary *dict=[NSDictionary dictionaryWithObject:@“...
阅读全文
摘要:NSArray用来存储对象的有序列表,它是不可变的不能存储c语言中的基本数据类型,如int、float、enum、struct,也不能存储nilNSArray *array=[NSArray arrayWithObject:@“12345”];数组创建之后是不可变的,需要在创建的时候就初始化。当把一...
阅读全文
摘要:OC—Foundation中常用的类包括:字符串,集合,字典等字符串:NSStringJava中string的常量是不可以改变的,stringBuild,和stringBuff中的字符串是可以改变的OC中的NSString也是不可变的创建常量字符串NSString *string = @“This ...
阅读全文
摘要:NSRange(是一个结构体)在Foundation/NSRange.h中对NSRange的定义typedef struct _NSRange{ NSUInteger location; NSUInteger length;}NSRange;//typedef unsigned long NSUIn...
阅读全文
摘要:BlockBlock封装了一段代码,可以在任何时候执行Block可以作为函数参数或者函数的返回值,而其本身又可以带输入参数或返回值。它和传统的函数指针很类似,但是有区别:block是inline(内联函数)的,并且默认情况下它对局部变量是只读的苹果官方建议尽量多用block。在多线程、异步任务、集合...
阅读全文
摘要:Protocol(类似java中的接口interface)简单来说就是一系列方法的列表,其中声明的方法可以被任何类实现。这种模式一般称为代理(delegation)模式在iOS和OS X开发中,apple采用了大量的代理模式来实现MVC中View(UI控件)和Controller(控制器)的解耦在j...
阅读全文
摘要:OC中的.h文件, 是类的声明文件,用来声明函数(方法),变量OC中的.m文件,是类的实现文件,用来实现.h中声明的函数(方法)类的声明使用:@interface ——@end如果在.m文件中使用@interface----@end称为类扩展,一般是私有扩展类的实现使用:@implementatio...
阅读全文
摘要:任何继承了NSObject的对象,都需要内存管理,但是对基本数据类型无效(不需要释放)原理:每个对象内部都保存了一个与之相关联的整数,称为引用计数器当使用alloc、new或者copy创建一个对象时,对象的引用计数器被设置为1给对象发送一条retain消息,可以使引用计数器值+1给对象发送一条rel...
阅读全文
摘要:Category(分类)语法OC提供了一种与众不同的方式—Category,可以动态的给已经存在的类添加新的行为(方法),例如Student类中已经有了test类,但是你又想不改变student类的基础上动态的添加一个新方法,不能添加成员变量。这样可以保证类的原始设计规模较小,功能增加时再逐步扩展使...
阅读全文