This means you also have an outlet named "usericon".
This is kind of a feature, really -- when setting an outlet named "foobar", the machinery first looks for a method named -setFoobar:, and if it's found, then it's invoked with the outlet as the argument and assumes the method sets the instance variable. If the method is not found, then the instance variable is assigned directly.
So, you either need to rename your outlet or rename your action method.