NSUserDefaults - How to tell if a key exists

Ethan Mick picture Ethan Mick · Dec 27, 2009 · Viewed 102.1k times · Source

I'm working on a small iPhone app, and I am using NSUserDefaults as my data persistence. It only has to keep track of a few things, such as some names and some numbers so I figure I might as well keep it simple.

I found this page for some reference, but I don't think it can answer my question. Basically, I want to be able to check if a value (or a key) already exists in the NSUserDefaults and then do something accordingly.

Some examples: The app starts up, if this is the first time it starts up it outputs an alert saying welcome. To tell if this is first time it has opened it reads the UserDefaults and checks.

Example 2: It says, "Hello [Name]", where Name is something you have entered. If you have opened the app and there is no name, it should say "Hello World." I need to check if you have entered a name already and act accordingly. The name would be stored in NSUserDefaults.

Some help here? I'd really appreciate it!

Answer

jspcal picture jspcal · Dec 27, 2009

objectForKey: will return nil if it doesn't exist.