Cocoa Bindings

Automatically synchronize your data model with your app's interface using Cocoa Bindings.


Core Controllers


A controller that can manage an object's properties referenced by key-value paths.


An abstract class that implements the NSEditor and NSEditorRegistration informal protocols required for controller classes.

Tree-Based Data

Navigating Hierarchical Data Using Outline and Split Views

Build a structured user interface that simplifies navigation in your app.


A bindings-compatible controller that manages a tree of objects.


A node in a tree of nodes.

Array-Based Data


A bindings-compatible controller that manages a collection of objects.

Key-Value Data


A bindings-compatible controller that manages the display and editing of a dictionary of key-value pairs.


A set of methods implemented by arranged objects to give access to information about those objects.


A set of methods that you can use to create and remove bindings between view objects and controllers, or between controllers and model objects.

Data Placeholders


A set of methods that an object can implement to register default placeholders to be displayed for a binding, when no other placeholder is specified.

See Also

App Structure

Core App

Learn about the objects that you use to interact with the system.

Documents, Files, and iCloud

Manage your app's data using documents and store it to the local file system or to iCloud.

Resource Management

Manage the storyboards and nib files containing your app's user interface, and learn how to load data that is stored in resource files.