---
title: Table views
framework: uikit
role: collectionGroup
role_heading: API Collection
path: uikit/table-views
---

# Table views

Display data in a single column of customizable rows.

## Overview

Overview A table view displays a single column of vertically scrolling content, divided into rows and sections. Each row of a table displays a single piece of information related to your app. Sections let you group related rows together. For example, the Contacts app uses a table to display the names of the user’s contacts.

Table views are a collaboration between many different objects, including: Cells. A cell provides the visual representation for your content. You can use the default cells provided by UIKit or define custom cells to suit the needs of your app. Table view controller. You typically use a UITableViewController object to manage a table view. You can use other view controllers too, but a table view controller is required for some table-related features to work. Your data source object. This object adopts the UITableViewDataSource protocol and provides the data for the table. Your delegate object. This object adopts the UITableViewDelegate protocol and manages user interactions with the table’s contents.

## Topics

### Essentials

- [UITableView](uikit/uitableview.md)

### Data

- [Filling a table with data](uikit/filling-a-table-with-data.md)
- [Asynchronously loading images into table and collection views](uikit/asynchronously-loading-images-into-table-and-collection-views.md)
- [UITableViewDataSource](uikit/uitableviewdatasource.md)
- [UITableViewDataSourcePrefetching](uikit/uitableviewdatasourceprefetching.md)
- [UITableViewDiffableDataSource](uikit/uitableviewdiffabledatasource-2euir.md)
- [NSDiffableDataSourceSnapshot](uikit/nsdiffabledatasourcesnapshot-swift.struct.md)
- [UILocalizedIndexedCollation](uikit/uilocalizedindexedcollation.md)
- [UIDataSourceTranslating](uikit/uidatasourcetranslating.md)
- [UIRefreshControl](uikit/uirefreshcontrol.md)

### Table management

- [Estimating the height of a table’s scrolling area](uikit/estimating-the-height-of-a-table-s-scrolling-area.md)
- [UITableViewController](uikit/uitableviewcontroller.md)
- [UITableViewDelegate](uikit/uitableviewdelegate.md)
- [UITableViewFocusUpdateContext](uikit/uitableviewfocusupdatecontext.md)

### Cells, headers, and footers

- [Configuring the cells for your table](uikit/configuring-the-cells-for-your-table.md)
- [Creating self-sizing table view cells](uikit/creating-self-sizing-table-view-cells.md)
- [Adding headers and footers to table sections](uikit/adding-headers-and-footers-to-table-sections.md)
- [UITableViewCell](uikit/uitableviewcell.md)
- [UITableViewHeaderFooterView](uikit/uitableviewheaderfooterview.md)

### Row actions

- [UISwipeActionsConfiguration](uikit/uiswipeactionsconfiguration.md)
- [UIContextualAction](uikit/uicontextualaction.md)
- [UITableViewRowAction](uikit/uitableviewrowaction.md)

### Selection management

- [Handling row selection in a table view](uikit/handling-row-selection-in-a-table-view.md)
- [Selecting multiple items with a two-finger pan gesture](uikit/selecting-multiple-items-with-a-two-finger-pan-gesture.md)

### Drag and drop

- [Supporting drag and drop in table views](uikit/supporting-drag-and-drop-in-table-views.md)
- [Adopting drag and drop in a table view](uikit/adopting-drag-and-drop-in-a-table-view.md)
- [UITableViewDragDelegate](uikit/uitableviewdragdelegate.md)
- [UITableViewDropDelegate](uikit/uitableviewdropdelegate.md)
- [UITableViewDropCoordinator](uikit/uitableviewdropcoordinator.md)
- [UITableViewDropItem](uikit/uitableviewdropitem.md)
- [UITableViewDropProposal](uikit/uitableviewdropproposal.md)

### Placeholder cells

- [UITableViewDropPlaceholderContext](uikit/uitableviewdropplaceholdercontext.md)
- [UITableViewDropPlaceholder](uikit/uitableviewdropplaceholder.md)
- [UITableViewPlaceholder](uikit/uitableviewplaceholder.md)

## See Also

### Container views

- [Autosizing views for localization in iOS](xcode/autosizing-views-for-localization-in-ios.md)
- [Collection views](uikit/collection-views.md)
- [UIStackView](uikit/uistackview.md)
- [UIScrollView](uikit/uiscrollview.md)
