Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

iOS Build a Playlist Browser with Objective-C Managing Playlist Data Using Helper Methods

I am receiving an error. But everything is typed exactly as I am shown . . .

Here is a screenshot of the error and my code. http://i.imgur.com/RgvBLGh.jpg

As you can see, I have declared the Method at the Bottom of the screen, but it says that It cannot find it. What is the problem?

4 Answers

Nick Kohrn
Nick Kohrn
36,935 Points

Your method declaration is typed as rbgColor, while your implementation of the method is rgbColor.

Just change your method signature on line 40 to rgbColor.

what is a method signature?

Nick Kohrn
Nick Kohrn
36,935 Points

A method signature is basically the declaration of the method. It's the name of the method, including the parameters and return type.

The method signature of your method from your attached image is this:

- (UIColor *) rgbColorFromDictionary: (NSDictionary *) colorDictionary;

Method signatures are the declarations that you put in your interface (.h) file when you let Xcode know that you will be implementing that method in your implementation (.m) file.

Ok, I didn't even have this method in my .h file, so I copied and put it there, but I still get the same error. Can you explain what you think I should do?

Nick Kohrn
Nick Kohrn
36,935 Points

Can you get a screenshot of the upper-part of your implementation (.m) file that you included in your initial post? I want to make sure that you are importing your Playlist.h file at the top of your implementation (.m) file.

OK here's my .m file: http://i.imgur.com/jfrssx2.jpg

and my .h file: http://i.imgur.com/LZ4L25T.jpg

Nick Kohrn
Nick Kohrn
36,935 Points

Thank you for posting the screenshots of your files.

It looks like you are creating a method signature of this in your interface (.h) file on line 14 and also correctly declaring it in your implementation (.m) file on line 40.

- (UIColor *) rbgColorFromDictionary: (NSDictionary *) colorDictionary;

However, when you are calling the method on line 35 of your implementation (.m) file, you are calling it with the incorrect method name.

Since you declared it as rbgColorFromDictionary, it will cause an error because you are calling it as rgbColorFromDictionary. You have switched 'rbg' in the method signature with 'rgb' when you call it. So, on line 40 of your implementation (.m) file, just change the 'rgb ' part of the method signature to 'rbg'. Or you can change 'rbg' to 'rgb' on line 14 of your interface (.h) file and on line 40 of your implementation (.m) file.

Ok I changed the code here in the way I think you wanted, but I am still receiving the same error. http://i.imgur.com/DVkfeCU.jpg I tried with calling both rgb and rgbColor, but anything I type in that starts with "rg" is unrecognizable by Xcode.