首先请原谅标题是否是正确的术语。我在这里搜索并搜索了这些问题,而且我没有找到与我的plist格式相关的解决方案。我试图实现以下代码,也许我错了。
NSString *filePath = [[NSBundle mainBundle] pathForResource:@"master" ofType:@"plist"];
NSDictionary *dict = [[NSDictionary alloc] initWithContentsOfFile:filePath];
self.spots = [dict objectForKey:@"Rooms"];
这是我的plist的格式,理想情况下我想拉所有"房间"从这个列表到表格。
<plist version="1.0">
<dict>
<key>Rooms</key>
<dict>
<key>Basement</key>
<array>
<string>Stereo</string>
<string>TV</string>
</array>
<key>Bathroom</key>
<array>
<string>Lights</string>
</array>
<key>BedRoom 1</key>
<array>
<string>Blinds</string>
<string>Lights</string>
<string>Stereo</string>
<string>TV</string>
</array>
我尝试使用[dict allKeys]
,只有在我更改了plist的格式后才会导致未排序的结果。我的问题应该很明显,我无法通过&#34;客房&#34;键并列出嵌套在字典中的键。这里有什么问题?我的代码?我的plist?我已经阅读了好几个小时,我想看一个相关的例子,如果有人觉得只是发布一个链接或说只是使用,我就能用简单的英语分开学习或解释.....
答案 0 :(得分:0)
所以看一下你的代码,self.spots
应该是一个房间词典。我想你问你怎么得到一个有序的键列表,这样你就可以按字母顺序显示它们?
NSArray * sortedKeys = [[self.spots allKeys] sortedArrayUsingSelector:@selector(localizedCaseInsensitiveCompare:)];
然后,您可以使用排序的键以正确的顺序访问词典