<!--
{
  "documentType" : "article",
  "framework" : "AppKit",
  "identifier" : "/documentation/AppKit/table-view",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Table View"
}
-->

# Table View

Display custom data in rows and columns.

## Topics

### Views

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

A set of related records, displayed in rows that represent individual records and columns that represent the attributes of those records.

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

A reusable container view shown for a particular cell in a table view that uses rows for content.

### Management

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

A set of methods that a table view uses to provide data to a table view and to allow the editing of the table view’s data source object.

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

A set of optional methods you implement in a table view delegate to customize the behavior of the table view.

[`NSTableViewDiffableDataSource`](/documentation/AppKit/NSTableViewDiffableDataSource-c5gl)

The object you use to manage data and provide items for a table view.

### Management

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

A set of methods that a table view uses to provide data to a table view and to allow the editing of the table view’s data source object.

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

A set of optional methods you implement in a table view delegate to customize the behavior of the table view.

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

The object you use to manage data and provide items for a table view.

### Rows and Columns

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

An object that draws headers over a table view’s columns and handles mouse events in those headers.

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

An object that a table header view uses to draw the content of the column headers.

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

The view shown for a row in a table view.

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

The display characteristics and identifier for a column in a table view.

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

A single action to present when the user swipes horizontally on a table row.

[`ResizingOptions`](/documentation/AppKit/NSTableColumn/ResizingOptions)



---

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)