MrS*_*oot 6 iphone objective-c plist nsarray
我不确定我的问题究竟是什么,因为我现在已经使用这种方法一段时间了,从来没有遇到过这个问题.
基本上,正如标题所说.此代码从位于"Resources"组中的plist加载数据
NSString *myFile = [[NSBundle mainBundle] pathForResource:@"myList" ofType:@"plist"];
myArray = [[NSArray alloc]initWithContentsOfFile:myFile];
NSLog(@"%@", myArray);
Run Code Online (Sandbox Code Playgroud)
它显示(null).谁知道为什么?
我在同一个ViewController中有另一个设置并且工作得很好.然而,这个特定的钳子不会加载.我甚至还删除了plist,只是从另一个创建了一个副本,以确保不是结构问题.
我做错了吗?我应该使用FileManager吗?
更新------------------------------------------------- ------------------------
好吧,我无法相信我要说的话.大声笑
我正在使用XCode 4,你在Xcode中编辑plists的方式与Xcode 3.x不同.和早期版本一样,你可以选择你想要的plist的根(数组,字典等)我的问题是我试图加载到NSArray中的plist实际上是一个结构化的字典.但是我从来没有在Xcode中看到这个,除了使用TextEdit或其他文本编辑器浏览内容之外,我不知道如何看到这个.
我必须说,很傻.有谁知道为什么XCode 4不会像XCode 3.x那样显示plist的根?
XCode 3.x:http://dl.dropbox.com/u/919254/XCode3.png
XCode 4:http://dl.dropbox.com/u/919254/Screen%20shot%202011-04-10%20at%202.30.35%20AM.png
请改用字典。我对 NSArrays 和属性列表有未定义的行为。例如
NSString *myFile = [[NSBundle mainBundle] pathForResource:@"myList" ofType:@"plist"];
NSMutableDictionary* myDict = [[NSMutableDictionary alloc]initWithContentsOfFile:myFile];
NSLog(@"%@", myDict);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5700 次 |
最近记录: |