ios基础篇— Foundation框架

凡是带有Mutable字样的类型,都是可变的,如果存在相对应的没有Mutable字样的类型,都是不可变的,一旦初始化之后,就不可以再修改。

一、NSString和NSMutableString
1.1 字符串转数字 integerValue

1.2 字符串常用方法:[NSString stringWithFormat:@”格式字符串”, 参数…]

1.3 如果要表示:0001之类的数字格式可以使用”%04d”之类的格式字符

二、NSNumber

2.1 是数字的NS对象的表达形式,如果要把数字添加到数组或者字典中,必须要进行转换,同时要使用数组中的数字,还需要转换成对应的数字。

2.2 要转换数字可以使用OC提供的包装方法:@(int)

2.3 要把NSNumber转换成字符串,需要使用stringValue方法

三、NSDate
3.1 是日期的数据类型

3.2 常用类方法[NSDate date]取出当前的系统时间

3.3 timeIntervalSinceDate方法可以计算两个时间的差值,以秒为单位

3.4 特别需要注意,不要把NSDate和NSData搞混,这对于初学者,是经常犯的错误。

四、NSArray和NSMutableArray
4.1 NSArray是不可变的,NSMutableArray是可变的,通常在使用时,可以用一个自定义方法,初始化一个NSMutableArray,而在方法之外,统一使用NSArray

4.2 在NSArray中,可以插入任何类型的对象,使用方法是:addObject(id)

4.3 要取出NSArray中的对象,可以使用整数下标获取,例如:array[i]

4.4 需要注意的是:如果要将int、float、double、NSInteger、CGFloat、CGPoint、CGRect、CGSize这些类型的数据插入数组之前,都需要进行类型转换

4.5 如果从Bundle中读取数组,可以使用arrayWithContentOfFile:方法

五、NSDictionary和NSMutableDictionary
5.1 字典和NSArray非常类似,不过字典是使用字符串键值进行维护的,它的可读性更强

5.2 在数据字典中,字符串的键值不能够重复

5.3 要向数据字典中添加对象,需要使用setValue:forKey:方法

5.4 要从数据字典中获取对象,需要使用dict[@”keyName”];

5.5 如果要从Bundle中读取字典,可以使用dictionaryWithContentsOfFile:方法

MVC体系结构
Model:数据模型
负责数据的保存以及相关的处理方法,Model不知道它会被谁调用,也不知道什么时候会被调用

View:视图
负责界面上元素的显示,通常在很多iOS应用程序中,视图只是StoryBoard或者xib文件,一般不会在视图中写太多的代码

Controller:控制器
负责界面上数据的显示,以及用户与界面发生交互之后,通知数据模型,做相应的处理。控制器是视图与数据模型之间的纽带和桥梁。通常在大多数应用程序中,视图控制器中的代码是最多的。

在iOS开发中,每一个Controller都有切仅有一个跟视图,如果使用Storyboard建立的应用程序,Xcode会自动设置一个view作为视图控制器的跟视图,也是第一个显示在用户面前的视图。