iOS : UIView class of UIKit Framework
Previously we learn about UIKit Framework and its features : iOS :
View class defines a rectangular area on the screen and the
interfaces for managing the content in that area. At runtime, a view object
handles the rendering of any content in its area and also handles any
interactions with that content.
The UIView class itself provides basic behavior for filling its
rectangular area with a background color. More sophisticated content can be
presented by subclassing UIView and implementing the necessary drawing and
event-handling code yourself. The UIKit framework also includes a set of
standard subclasses that range from simple buttons to complex tables and can be
used as-is. For example, a UILabel object draws a text string and a UIImageView
object draws an image.
Because view objects are the main way your application interacts
with the user, they have a number of responsibilities.
Here are just a few:
Drawing and animation
Views draw content in their rectangular area using technologies
such as UIKit, Core Graphics, and OpenGL ES.
Some view properties can be animated to new values.
Layout and subview management
A view may contain zero or more subviews.
Each view defines its own default resizing behavior in relation to
its parent view.
A view can define the size
and position of its subviews as needed.
A view is a responder and can handle touch events and other events
defined by the UIResponder class.
Views can use the addGestureRecognizer: method to install gesture
recognizers to handle common gestures.
Views can embed other views and create sophisticated visual
hierarchies. This creates a parent-child relationship between the view being
embedded (known as the subview) and the parent view doing the embedding (known
as the superview). Normally, a subview’s visible area is not clipped to the
bounds of its superview, but in iOS you can use the clipsToBounds property to
alter that behavior. A parent view may contain any number of subviews but each
subview has only one superview, which is responsible for positioning its
The geometry of a view is defined by its frame, bounds, and center
properties. The frame defines the origin and dimensions of the view in the
coordinate system of its superview and is commonly used during layout to adjust
the size or position of the view. The center property can be used to adjust the
position of the view without changing its size. The bounds defines the internal
dimensions of the view as it sees them and is used almost exclusively in custom
drawing code. The size portion of the frame and bounds rectangles are coupled
together so that changing the size of either rectangle updates the size of
Here's a simple example. This
moves a view to a new location
CGRect newFrame = theView.frame;
newFrame.origin.x += 500; // shift right by 500pts
theView.frame = newFrame;