Josiah Palmer
Josiah Palmer

Reputation: 151

How do you read/write to/from and xcode plist?

I have a utility app with the flipsideview and I'm trying to use the flipsideview to enable the user to change settings that will effect the main view. I thought the easiest way to do this would be to write changes made on the flip side view to a plist but I am new to objective-c and can't seem to find any help in any forums. When I use the code I found online I keep getting a "Initializer element is not a compile-time constant". This is the code:

NSError *error;
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"Settings.plist"];
NSFileManager *fileManager = [NSFileManager defaultManager];

if (![fileManager fileExistsAtPath: path])
{
    NSString *bundle = [[NSBundle mainBundle] pathForResource:@"settings" ofType:@"plist"];

[fileManager copyItemAtPath:bundle toPath: path error:&error];
}

Also, I am new to objective-c (making the transition from html, css, etc.) and so a description of what's going on would be much appreciated. And please don't just paste a link to the apple developer tutorials. I've been through them and can't seem to grasp it being I learn much better by doing a practical example.

Thanks ahead of time.

Upvotes: 0

Views: 693

Answers (1)

edc1591
edc1591

Reputation: 10182

Use NSUserDefaults. That's what you're supposed to use for saving user preferences.

Upvotes: 1

Related Questions