<!--
{
  "documentType" : "article",
  "framework" : "AppKit",
  "identifier" : "/documentation/AppKit/touch-bar",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Touch Bar"
}
-->

# Touch Bar

Display interactive content and controls in the Touch Bar.

## Topics

### Essentials

[Integrating a Toolbar and Touch Bar into Your App](/documentation/AppKit/integrating-a-toolbar-and-touch-bar-into-your-app)

Provide users quick access to your app’s features from a toolbar and corresponding Touch Bar.

[Creating and Customizing the Touch Bar](/documentation/AppKit/creating-and-customizing-the-touch-bar)

Adopt Touch Bar support by displaying interactive content and controls for your macOS apps.

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

An object that provides dynamic contextual controls in the Touch Bar of supported models of MacBook Pro.

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

A protocol that allows you to provide the items for a bar dynamically.

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

A protocol that an object adopts to create a bar object in your app.

### Touch Bar items

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

A UI control shown in the Touch Bar on supported models of MacBook Pro.

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

A bar item that, along with its delegate, provides a list of textual suggestions for the current text view.

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

A bar item that provides a system-defined color picker.

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

A bar item that contains a responder of your choice, such as a view, a button, or a scrubber.

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

A bar item that provides a bar to contain other items.

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

A bar item that provides a two-state control that can expand into its second state, showing the contents of a bar that it owns.

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

A bar item that, along with its delegate, provides a list of objects eligible for sharing.

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

A bar item that provides a slider control for choosing a value in a range.

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

A bar item that provides a stepper control for incrementing or decrementing a value.

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

An object that specifies how user interface elements resize themselves when space is constrained.

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

A bar item that provides a button.

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

A bar item that provides a picker control with multiple options.

[`ControlRepresentation`](/documentation/AppKit/NSPickerTouchBarItem/ControlRepresentation-swift.enum)

Constants that specify display styles for picker bar items.

[`SelectionMode`](/documentation/AppKit/NSPickerTouchBarItem/SelectionMode-swift.enum)

Constants that specify selection modes for picker bar items.

### Scrubbers

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

A customizable item picker control for the Touch Bar.

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

A set of methods that a scrubber data source object implements to provide items to the scrubber from an associated data collection in your app.

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

A set of methods that a scrubber delegate implements to respond to user interactions.

### Scrubber items

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

An item at a specific index position in the scrubber.

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

An abstract base class for the views whose layout is managed by a scrubber.

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

A concrete view subclass for displaying images in a scrubber items.

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

An abstract class that provides decorative accessory views for selected and highlighted items within a scrubber control.

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

An abstract base class for specifying the appearance of a highlighted or selected item in a scrubber.

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

A concrete view subclass for displaying text for an item in a scrubber.

### Scrubber layouts

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

A concrete layout object that arranges items end-to-end in a linear strip.

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

A protocol that a scrubber delegate can adopt to provide the size of an item.

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

A concrete layout object that sizes each item to some fraction of the scrubber’s visible size.

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

The layout of a scrubber item.

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

An abstract class that describes the layout of items within a scrubber control.



---

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)