Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

iOS

NSUnknownKeyException in Ribbit tutorial: Help

Here is what I am getting from the console, it fails to start for me

Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<ZDLoginViewController 0x988f8b0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key password.'

Here is my Github link for it: https://github.com/zdaz/Quick-Pic.git

And yup, I named it something else so I could mess around customizing it. It should all be the same as the tutorial so I'm a bit stumped.

3 Answers

Stone Preston
Stone Preston
42,016 Points

Go to your login controller in storyboard. Select the outlets tab. There is probably an outlet connection with an x icon on it which means it's not connected to a property. Delete that outlet then build again

Oh my god you're awesome.

It wasn't that there was an X but I didn't realize it still kept the outlets even if I deleted them previously from my header file so I had like 6 outlets that were messing it up. Deleted the incorrect ones and it works now. Thanks a ton!

Stone Preston
Stone Preston
42,016 Points

yeah that will do it. If you drag a connection from your storyboard then delete from the header file for some reason (most of the time I accidentaly select outlet when I want an action or misspell something) then you have to remove the connection in storyboard as well. Glad you got it fixed.

You have outlets pointing from your password and username UITextFields (in your login view controller) scene that don't have a corresponding property in code.

They do have a property though in my login view controller header file.

You have one property and more than one outlet.

You're right! I got it fixed, thanks for taking the time to help.

Chris Clark
Chris Clark
1,876 Points

Oh my god thank you, I was racking my brain on this one, had the exact same problem. Should probably pop a bit into the end of this video saying that this is a common error.