iphone:可以从settings.bundle中的PSMultiValue说明符获取标题吗?
我计划使用pickerview中settings.bundle中PSMultiValue说明符中的标题。我只知道如何根据settings.bundle中的键获取所选值。是否可以根据键获取所有标题?(可能有更优雅的方式)。您可以获取设置词典并浏览其内容(前提是您了解其内部结构):iphone:可以从settings.bundle中的PSMultiValue说明符获取标题吗?,iphone,settings.bundle,Iphone,Settings.bundle,我计划使用pickerview中settings.bundle中PSMultiValue说明符中的标题。我只知道如何根据settings.bundle中的键获取所选值。是否可以根据键获取所有标题?(可能有更优雅的方式)。您可以获取设置词典并浏览其内容(前提是您了解其内部结构): 请注意,通过这种方式获得的标题不是本地化的。这是我的版本,它还使用说明符键来定位PSMultiValue说明符,而不记得它位于哪个索引。索引可能会随着时间的推移而变化(由于设置包中的更改) NSString*setti
请注意,通过这种方式获得的标题不是本地化的。这是我的版本,它还使用说明符键来定位PSMultiValue说明符,而不记得它位于哪个索引。索引可能会随着时间的推移而变化(由于设置包中的更改)
NSString*settingsBundle=[[NSBundle mainBundle]pathForResource:@“bundle”类型的“设置”]stringByAppendingPathComponent:@“Root.plist”]
NSString* listPath = [[[NSBundle mainBundle] pathForResource:@"Settings" ofType:@"bundle"] stringByAppendingPathComponent:@"Root.plist"];
NSDictionary* ttDict = [NSDictionary dictionaryWithContentsOfFile:listPath];
if (ttDict != nil){
NSArray* prefsArray = [ttDict objectForKey:@"PreferenceSpecifiers"];
// Next you get dictionary for required setting by its index (you should know it)
NSDictionary* settingDict = [prefsArray objectAtIndex: index];
NSArray* titlesArray = [settingDict objectForKey:@"Titles"]; // Voila
}
NSDictionary* rootPlist = [NSDictionary dictionaryWithContentsOfFile:settingsBundle];
if (rootPlist == nil)
return nil;
NSArray* specifiers = [rootPlist objectForKey:@"PreferenceSpecifiers"];
NSDictionary *multiValueSpecifier = nil;
for (NSDictionary *specifier in specifiers)
{
if ([[specifier objectForKey:@"Key"] isEqualToString:speficierKey] == YES &&
[[specifier objectForKey:@"Type"] isEqualToString:@"PSMultiValueSpecifier"] == YES)
{
multiValueSpecifier = specifier;
break;
}
}
if (multiValueSpecifier == nil)
return nil;
NSArray* titlesArray = [multiValueSpecifier objectForKey:@"Titles"];
NSArray* valuesArray = [multiValueSpecifier objectForKey:@"Values"];
NSDictionary *dictionary = [NSDictionary dictionaryWithObjects:titlesArray
forKeys:valuesArray];
return dictionary;