iOS settingbundle

来源:互联网 发布:hadoop java mapreduce 编辑:程序博客网 时间:2024/05/17 02:44

// get pre-set value

-(NSDictionary*)settingsBundleDefaultValues

{

    NSMutableDictionary *defaultDic_ = [[NSMutableDictionary alloc]init];

    NSURL *settingsUrl = [NSURL fileURLWithPath:[[NSBundle mainBundlepathForResource:@"Root" 

ofType:@"plist" 

   inDirectory:@"Settings.bundle"isDirectory:YES]; 

    NSDictionary *settingBundle = [NSDictionary dictionaryWithContentsOfURL:settingsUrl];

    NSArray *preference_ = [settingBundle objectForKey:@"PreferenceSpecifiers"];

    for (NSDictionary *component_ in preference_) {

        NSString *key = [component_ objectForKey:@"Key"];

        NSString *defaultValue = [component_ objectForKey:@"DefaultValue"];

        if (!key||!defaultValue) continue;

        if (![component_ objectForKey:key]) {

        [defaultDic_ setObject:[component_ objectForKey:@"DefaultValue"forKey:key];

        }

    }

    return defaultDic_;

}

// get

NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];

// this step need to code

[userDefault registerDefaults:[self settingsBundleDefaultValues]];

NSString *text = [userDefault stringForKey:@"key-name"];

原创粉丝点击