---
title: Views and controls
framework: uikit
role: collectionGroup
role_heading: API Collection
path: uikit/views-and-controls
---

# Views and controls

Present your content onscreen and define the interactions allowed with that content.

## Overview

Overview Views and controls are the visual building blocks of your app’s user interface. Use them to draw and organize your app’s content onscreen.

Views can host other views. Embedding one view inside another creates a containment relationship between the host view (known as the superview) and the embedded view (known as the subview). View hierarchies make it easier to manage views. You can also use views to do any of the following: Respond to touches and other events (either directly or in coordination with gesture recognizers). Draw custom content using Core Graphics or UIKit classes. Support drag and drop interactions. Respond to focus changes. Animate the size, position, and appearance attributes of the view. UIView is the root class for all views and defines their common behavior. UIControl defines additional behaviors that are specific to buttons, switches, and other views designed for user interactions. For additional information about how to use views and controls, see Human Interface Guidelines. To see examples of UIKit controls, see UIKit Catalog: Creating and customizing views and controls.

## Topics

### View fundamentals

- [UIView](uikit/uiview.md)
- [UIKit Catalog: Creating and customizing views and controls](uikit/uikit-catalog-creating-and-customizing-views-and-controls.md)

### Container views

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

### Content views

- [UIActivityIndicatorView](uikit/uiactivityindicatorview.md)
- [UICalendarView](uikit/uicalendarview.md)
- [UIContentUnavailableView](uikit/uicontentunavailableview.md)
- [UIImageView](uikit/uiimageview.md)
- [UIPickerView](uikit/uipickerview.md)
- [UIProgressView](uikit/uiprogressview.md)

### Controls

- [Responding to control-based events using target-action](uikit/responding-to-control-based-events-using-target-action.md)
- [UIControl](uikit/uicontrol.md)
- [UIButton](uikit/uibutton.md)
- [UIColorWell](uikit/uicolorwell.md)
- [UIDatePicker](uikit/uidatepicker.md)
- [UIPageControl](uikit/uipagecontrol.md)
- [UISegmentedControl](uikit/uisegmentedcontrol.md)
- [UISlider](uikit/uislider.md)
- [UIStepper](uikit/uistepper.md)
- [UISwitch](uikit/uiswitch.md)

### Text views

- [UILabel](uikit/uilabel.md)
- [UITextField](uikit/uitextfield.md)
- [UITextView](uikit/uitextview.md)
- [Drag and drop customization](uikit/drag-and-drop-customization.md)

### Search field

- [UISearchTextField](uikit/uisearchtextfield.md)
- [UISearchToken](uikit/uisearchtoken.md)
- [UISearchTextFieldDelegate](uikit/uisearchtextfielddelegate.md)

### Visual effects

- [UIVisualEffect](uikit/uivisualeffect.md)
- [UIVisualEffectView](uikit/uivisualeffectview.md)
- [UIVibrancyEffect](uikit/uivibrancyeffect.md)
- [UIBlurEffect](uikit/uiblureffect.md)

### Bars

- [UIBarItem](uikit/uibaritem.md)
- [UIBarButtonItem](uikit/uibarbuttonitem.md)
- [UIBarButtonItemGroup](uikit/uibarbuttonitemgroup.md)
- [UINavigationBar](uikit/uinavigationbar.md)
- [UISearchBar](uikit/uisearchbar.md)
- [UIToolbar](uikit/uitoolbar.md)
- [UITabBar](uikit/uitabbar.md)
- [UITabBarItem](uikit/uitabbaritem.md)
- [UIBarPositioning](uikit/uibarpositioning.md)
- [UIBarPositioningDelegate](uikit/uibarpositioningdelegate.md)

### Content viewer

- [UILargeContentViewerInteraction](uikit/uilargecontentviewerinteraction.md)
- [UILargeContentViewerInteractionDelegate](uikit/uilargecontentviewerinteractiondelegate.md)
- [UILargeContentViewerItem](uikit/uilargecontentvieweritem.md)

### Private Click Measurement (PCM)

- [UIEventAttributionView](uikit/uieventattributionview.md)
- [UIEventAttribution](uikit/uieventattribution.md)
- [NSAdvertisingAttributionReportEndpoint](bundleresources/information-property-list/nsadvertisingattributionreportendpoint.md)

### SwiftUI

- [Using SwiftUI with UIKit](uikit/using-swiftui-with-uikit.md)

### Related types

- [UIOffset](uikit/uioffset.md)
- [UIAxis](uikit/uiaxis.md)
- [UIEdgeInsets](uikit/uiedgeinsets.md)
- [NSDirectionalEdgeInsets](uikit/nsdirectionaledgeinsets.md)
- [NSDirectionalRectEdge](uikit/nsdirectionalrectedge.md)
- [NSRectAlignment](uikit/nsrectalignment.md)
- [UIKit macros](uikit/uikit-macros.md)

## See Also

### User interface

- [View controllers](uikit/view-controllers.md)
- [View layout](uikit/view-layout.md)
- [Appearance customization](uikit/appearance-customization.md)
- [Animation and haptics](uikit/animation-and-haptics.md)
- [Windows and screens](uikit/windows-and-screens.md)
