@ The right guy - UIButton has a readonly property for its image. Thus, you cannot directly set the image by referring to the imageView image.
@property(nonatomic,readonly,retain) UIImageView *imageView __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_3_0);
Use a convenient method
[UIButtonInstance setImage:imageName forState:buttonState]
source share