NSBundle的使用,注意mainBundle和Custom Bundle的区别
2013-01-17 21:49
411 查看
1、[NSBundle mainBundle],文件夹其实是Group,如左侧的树形文件管理器
Build之后,文件直接就复制到了根目录下,于是读取的方法,应该是这样:
2、使用文件夹的时候,Build结果
依然使用同样的方法,不需要制定文件夹路径
编译之后,mainBundle的资源都是放到RootFolder下,所以,可以直接访问,不要指定内部路径
3、使用其他的Bundle
使用Custom bundle,访问内部的子文件夹,需要指定inDirectory参数,这个mainBundle不同,这是为何?
Build之后,文件直接就复制到了根目录下,于是读取的方法,应该是这样:
NSString *earth = [[NSBundle mainBundle] pathForResource:@"Brad Cox" ofType:@"png"];
2、使用文件夹的时候,Build结果
依然使用同样的方法,不需要制定文件夹路径
//inDirectory参数可有可无
NSString *earth = [[NSBundle mainBundle] pathForResource:@"Matthijs" ofType:@"png" inDirectory:@"Images/MoreImages"]; NSString *earth = [[NSBundle mainBundle] pathForResource:@"Matthijs" ofType:@"png"];
编译之后,mainBundle的资源都是放到RootFolder下,所以,可以直接访问,不要指定内部路径
3、使用其他的Bundle
NSString *resourceBundle = [[NSBundle mainBundle] pathForResource:@"Resources" ofType:@"bundle"]; NSLog(@"resourceBundle: %@", resourceBundle); NSString *earth = [[NSBundlebundleWithPath:resourceBundle] pathForResource:@"Matthijs"ofType:@"jpg"inDirectory:@"Images/MoreImages"]; NSLog(@"path: %@", earth);
使用Custom bundle,访问内部的子文件夹,需要指定inDirectory参数,这个mainBundle不同,这是为何?
注意:Since bundles other than the main bundle can have folders embedded inside them, to access files inside folders of a bundle other than the main bundle it is best to use the pathFor Resource:ofType:inDirectory: method of NSBundle to explicitly specify the folder in which a specific file/resource exists.
相关文章推荐
- NSBundle的使用,注意mainBundle和Custom Bundle的区别
- NSBundle的使用,注意mainBundle和Custom Bundle的区别
- NSBundle的使用,注意mainBundle和Custom Bundle的区别
- NSBundle的使用,注意mainBundle和Custom Bundle的区别
- NSBundle的使用,注意mainBundle和Custom Bundle的区别
- NSBundle的使用,注意mainBundle和Custom Bundle的区别
- NSBundle的使用,注意mainBundle和Custom Bundle的区别
- IOS NSBundle的使用,注意mainBundle和Custom Bundle的区别
- 【转】NSBundle的使用,注意mainBundle和Custom Bundle的区别
- initWithNibName 和 [[NSBundle mainBundle] loadNibNamed] 的区别
- 使用TfrmCustomMD(帶樹)时注意事项
- WinForm中Component Class、User Control及Custom Control的区别和使用建议
- lucene.net 使用过程中的 几个注意事项(含termquery 和QueryParser 的区别)
- 关于[[NSBundle mainBundle] pathForResource:@"name"
- iOS开发.[NSBundle mainBundle] 通过pathForResource返回路径为空.
- Mysql5.1中主要使用的几种表引擎?它们的区别是什么?在使用表引擎时,要注意什么问题?
- 如何解决 X-code5.0中的iOS7.0SDK运行程序时,出现的以下问题:“Could not find a storyboard named 'Main' in bundle NSBundle”
- 使用bundle传递ArrayList集合注意事项
- Wrong02-Could not find a storyboard named‘Main’in bundle NSBundle
- 关于glut热键响应(如回调glutKeyboardUpFunc函数)---注意区别使用glut.lib和glut32.lib