Instance Method


Inserts a view among the view’s subviews so it’s displayed immediately above or below another view.


func addSubview(_ view: NSView, positioned place: NSWindow.OrderingMode, relativeTo otherView: NSView?)



The view object to add to the view as a subview.


An enum constant specifying the position of the aView relative to otherView. Valid values are NSWindowAbove or NSWindowBelow.


The other view aView is to be positioned relative to. If otherView is nil (or isn’t a subview of the view), aView is added above or below all of its new siblings.


This method also sets the view as the next responder of aView.

The view retains aView. If you use removeFromSuperview() to remove aView from the view hierarchy, aView is released. If you want to keep using aView after removing it from the view hierarchy (if, for example, you are swapping through a number of views), you must retain it before invoking removeFromSuperview().

See Also

Managing the View Hierarchy

var superview: NSView?

The view that is the parent of the current view.

var subviews: [NSView]

The array of views embedded in the current view.

var window: NSWindow?

The view’s window object, if it is installed in a window.

func addSubview(NSView)

Adds a view to the view’s subviews so it’s displayed above its siblings.

func didAddSubview(NSView)

Overridden by subclasses to perform additional actions when subviews are added to the view.

func removeFromSuperview()

Unlinks the view from its superview and its window, removes it from the responder chain, and invalidates its cursor rectangles.

func removeFromSuperviewWithoutNeedingDisplay()

Unlinks the view from its superview and its window and removes it from the responder chain, but does not invalidate its cursor rectangles to cause redrawing.

func replaceSubview(NSView, with: NSView)

Replaces one of the view’s subviews with another view.

func isDescendant(of: NSView) -> Bool

Returns true if the view is a subview of a given view or if it’s identical to that view; otherwise, it returns false.

var opaqueAncestor: NSView?

The view’s closest opaque ancestor, which might be the view itself.

func ancestorShared(with: NSView) -> NSView?

Returns the closest ancestor shared by the view and another specified view.

func viewDidMoveToSuperview()

Informs the view that its superview has changed (possibly to nil).

func viewDidMoveToWindow()

Informs the view that it has been added to a new view hierarchy.

func viewWillMove(toSuperview: NSView?)

Informs the view that its superview is about to change to the specified superview (which may be nil).

func viewWillMove(toWindow: NSWindow?)

Informs the view that it’s being added to the view hierarchy of the specified window object (which may be nil).

func willRemoveSubview(NSView)

Overridden by subclasses to perform additional actions before subviews are removed from the view.

var enclosingMenuItem: NSMenuItem?

The menu item containing the view or any of its superviews in the view hierarchy.