UIButton is a subclass of UIView for displaying buttons in iOS. It implements the target action paradigm to send events to the controller layer.
A UIButton intercepts touch events and sends an action message to a target object when tapped. Methods for setting the target and action are inherited from UIControl (uicontrol). This class provides methods for setting the title, image, and other appearance properties of a UIButton. By using these accessors, you can specify a different appearance for each button state:
UIControlStateNormal,UIControlStateHighlighted,UIControlStateDisabled,UIControlStateSelected.UIControlStateFocused.