<!--
{
  "availability" : [
    "macOS: 10.10.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "AppKit",
  "identifier" : "/documentation/AppKit/NSSplitViewItem",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "AppKit"
    ],
    "preciseIdentifier" : "c:objc(cs)NSSplitViewItem"
  },
  "title" : "NSSplitViewItem"
}
-->

# NSSplitViewItem

An item in a split view controller.

```
class NSSplitViewItem
```

## Overview

A split view item represents a single pane in a split view controller ([`NSSplitViewController`](/documentation/AppKit/NSSplitViewController)). Each split view item contains information about a child view controller in the split view controller, like its preferred thickness, holding priority, and collapsed state.

To add one or more accessory views to the top or bottom of a split view item, such as a search field above a list, use the [`topAlignedAccessoryViewControllers`](/documentation/AppKit/NSSplitViewItem/topAlignedAccessoryViewControllers) and [`bottomAlignedAccessoryViewControllers`](/documentation/AppKit/NSSplitViewItem/bottomAlignedAccessoryViewControllers) properties to specify  [`NSSplitViewItemAccessoryViewController`](/documentation/AppKit/NSSplitViewItemAccessoryViewController) types.

## Topics

### Creating a split view item

[`init(sidebarWithViewController:)`](/documentation/AppKit/NSSplitViewItem/init(sidebarWithViewController:))

Creates a split view item that represents a sidebar for the specified view controller.

[`init(contentListWithViewController:)`](/documentation/AppKit/NSSplitViewItem/init(contentListWithViewController:))

Creates a split view item that represents a content list for the specified view controller.

[`init(viewController:)`](/documentation/AppKit/NSSplitViewItem/init(viewController:))

Creates a split view item that represents the specified view controller.

[`init(inspectorWithViewController:)`](/documentation/AppKit/NSSplitViewItem/init(inspectorWithViewController:))

Creates a split view item that represents an inspector for the specified view controller.

### Managing the item thickness

[`automaticMaximumThickness`](/documentation/AppKit/NSSplitViewItem/automaticMaximumThickness)

The maximum thickness of the split view item when it resizes due to automatic sizing.

[`preferredThicknessFraction`](/documentation/AppKit/NSSplitViewItem/preferredThicknessFraction)

The preferred thickness of the split view item relative to the split view.

[`minimumThickness`](/documentation/AppKit/NSSplitViewItem/minimumThickness)

The minimum thickness of the split view item.

[`maximumThickness`](/documentation/AppKit/NSSplitViewItem/maximumThickness)

The maximum thickness of the split view item.

[`unspecifiedDimension`](/documentation/AppKit/NSSplitViewItem/unspecifiedDimension)

A constant that resets a dimension’s value.

### Getting Auto Layout behaviors

[`holdingPriority`](/documentation/AppKit/NSSplitViewItem/holdingPriority)

The priority for a split view item to hold its size.

[`automaticallyAdjustsSafeAreaInsets`](/documentation/AppKit/NSSplitViewItem/automaticallyAdjustsSafeAreaInsets)

When YES, other items such as sidebars or inspectors may appear overlaid on top of this item’s `viewController` and this item’s `safeAreaInsets` will be adjusted with respect to overlaid content. Defaults to `NO`.

### Getting the item behavior

[`behavior`](/documentation/AppKit/NSSplitViewItem/behavior-swift.property)

The standard behavior type of the split view item.

[`NSSplitViewItem.Behavior`](/documentation/AppKit/NSSplitViewItem/Behavior-swift.enum)

Constants that describe the behavior of the split view item.

### Collapsing and expanding the item

[`isCollapsed`](/documentation/AppKit/NSSplitViewItem/isCollapsed)

A Boolean value that determines whether the child view controller that corresponds to the split view item is in a collapsed state in the split view controller.

[`canCollapse`](/documentation/AppKit/NSSplitViewItem/canCollapse)

A Boolean value that determines whether a user interaction can collapse the child view controller that corresponds to the split view item.

[`collapseBehavior`](/documentation/AppKit/NSSplitViewItem/collapseBehavior-swift.property)

The resizing behavior when the split view item toggles its collapsed state.

[`NSSplitViewItem.CollapseBehavior`](/documentation/AppKit/NSSplitViewItem/CollapseBehavior-swift.enum)

Constants that describe the split view item’s collapsing behavior.

[`isSpringLoaded`](/documentation/AppKit/NSSplitViewItem/isSpringLoaded)

A Boolean value that determines whether the split view item can temporarily expand during a drag.

[`canCollapseFromWindowResize`](/documentation/AppKit/NSSplitViewItem/canCollapseFromWindowResize)

A Boolean value that determines whether a window resize can collapse the child view controller that corresponds to the split view item.

### Customizing appearance

[`allowsFullHeightLayout`](/documentation/AppKit/NSSplitViewItem/allowsFullHeightLayout)

A Boolean value that indicates whether full-height sidebars appear in the window after you set a style mask.

[`titlebarSeparatorStyle`](/documentation/AppKit/NSSplitViewItem/titlebarSeparatorStyle)

The type of separator that the app displays between the title bar and content of a window.

[`NSTitlebarSeparatorStyle`](/documentation/AppKit/NSTitlebarSeparatorStyle)

Styles that determine the type of separator displayed between the title bar and content of a window.

### Configuring accessory views

[`topAlignedAccessoryViewControllers`](/documentation/AppKit/NSSplitViewItem/topAlignedAccessoryViewControllers)

The following methods allow you to add accessory views to the top/bottom of this splitViewItem. See `NSSplitViewItemAccessoryViewController` for more details.

[`bottomAlignedAccessoryViewControllers`](/documentation/AppKit/NSSplitViewItem/bottomAlignedAccessoryViewControllers)

[`addTopAlignedAccessoryViewController(_:)`](/documentation/AppKit/NSSplitViewItem/addTopAlignedAccessoryViewController(_:))

[`insertTopAlignedAccessoryViewController(_:at:)`](/documentation/AppKit/NSSplitViewItem/insertTopAlignedAccessoryViewController(_:at:))

[`removeTopAlignedAccessoryViewController(at:)`](/documentation/AppKit/NSSplitViewItem/removeTopAlignedAccessoryViewController(at:))

NOTE: you can use this method, or `-removeFromParentViewController:`, whichever is easier.

[`addBottomAlignedAccessoryViewController(_:)`](/documentation/AppKit/NSSplitViewItem/addBottomAlignedAccessoryViewController(_:))

[`insertBottomAlignedAccessoryViewController(_:at:)`](/documentation/AppKit/NSSplitViewItem/insertBottomAlignedAccessoryViewController(_:at:))

[`removeBottomAlignedAccessoryViewController(at:)`](/documentation/AppKit/NSSplitViewItem/removeBottomAlignedAccessoryViewController(at:))

NOTE: you can use this method, or `-removeFromParentViewController:`, whichever is easier.

[`NSSplitViewItemAccessoryViewController`](/documentation/AppKit/NSSplitViewItemAccessoryViewController)

### Getting the View Controller

[`viewController`](/documentation/AppKit/NSSplitViewItem/viewController)

The view controller that the split view item represents.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)