Instance Method


Lays out subviews.


- (void)layoutSubviews;


The default implementation of this method does nothing on iOS 5.1 and earlier. Otherwise, the default implementation uses any constraints you have set to determine the size and position of any subviews.

Subclasses can override this method as needed to perform more precise layout of their subviews. You should override this method only if the autoresizing and constraint-based behaviors of the subviews do not offer the behavior you want. You can use your implementation to set the frame rectangles of your subviews directly.

You should not call this method directly. If you want to force a layout update, call the setNeedsLayout method instead to do so prior to the next drawing update. If you want to update the layout of your views immediately, call the layoutIfNeeded method.

See Also

Laying out Subviews

- setNeedsLayout

Invalidates the current layout of the receiver and triggers a layout update during the next update cycle.

- layoutIfNeeded

Lays out the subviews immediately, if layout updates are pending.


A Boolean value that indicates whether the receiver depends on the constraint-based layout system.


A Boolean value that determines whether the view’s autoresizing mask is translated into Auto Layout constraints.