bundle是一个目录,其中包含了程序会使用到的资源.这些资源包含了如图像,声音,编译好的代码,nib文件(用户也会把bundle称为plug-in).对应bundle,cocoa提供了类NSBundle.
1.获取图像声音等文件
//获得本地文件路径
NSString * str = [[NSBundle mainBundle] pathForResource:@"爸比我要喝奶奶" ofType:@"mp3"];
//获得本地文件的路径并转url
NSURL *url = [[NSBundle mainBundle] URLForResource:@"ABC.mp3" withExtension:nil];
2.获取nib文件
//获取CustomCell.xib文件内所有的视图。
NSArray *nibs=[[NSBundle mainBundle] loadNibNamed:@"CustomCell" owner:self options:nil];
cell=[nibs objectAtIndex:0];//因为返回的是数组
3.获取Login.storyboard文件内的根视图(箭头指向的控制器)。
id vc = [[UIStoryboardstoryboardWithName:@"Login"bundle:nil]instantiateInitialViewController];
4.获取主窗口的根视图控制器
[UIApplicationsharedApplication].keyWindow.rootViewController = vc;
5.获取info.plist文件内的内容
//比如获取当前版本号
NSString * currentVersion = [NSBundle mainBundle].infoDictionary[@"CFBundleVersion"];