---
title: UISearchBar
framework: uikit
role: symbol
role_heading: Class
path: uikit/uisearchbar
---

# UISearchBar

A specialized view for receiving search-related information from the user.

## Declaration

```swift
@MainActor class UISearchBar
```

## Overview

Overview UISearchBar provides a text field for entering text, a search button, a bookmark button, and a cancel button. A search bar doesn’t actually perform any searches. You use a delegate, an object conforming to the UISearchBarDelegate protocol, to implement the actions when the user enters text or clicks buttons. For details about interacting with the text field, accessing its content, and using tokens, see UISearchTextField and UISearchToken. Customize appearance You can customize the appearance of search bars one at a time, or you can use the appearance proxy ([UISearchBar appearance]) to customize the appearance of all search bars in an app. In general, you should specify a value for the normal state to be used by other states which don’t have a custom value set. Similarly, when a property is dependent on the bar metrics (on iPhone, in landscape orientation bars have a different height from standard), you should specify a value for UIBarMetricsDefault.

## Topics

### Creating a search bar

- [init()](uikit/uisearchbar/init().md)
- [init(coder:)](uikit/uisearchbar/init(coder:).md)
- [init(frame:)](uikit/uisearchbar/init(frame:).md)

### Handling search bar interactions

- [delegate](uikit/uisearchbar/delegate.md)
- [UISearchBarDelegate](uikit/uisearchbardelegate.md)

### Getting the search text

- [placeholder](uikit/uisearchbar/placeholder.md)
- [prompt](uikit/uisearchbar/prompt.md)
- [text](uikit/uisearchbar/text.md)
- [searchTextField](uikit/uisearchbar/searchtextfield.md)

### Configuring the search bar

- [isEnabled](uikit/uisearchbar/isenabled.md)
- [barTintColor](uikit/uisearchbar/bartintcolor.md)
- [searchBarStyle](uikit/uisearchbar/searchbarstyle.md)
- [UISearchBar.Style](uikit/uisearchbar/style.md)
- [tintColor](uikit/uisearchbar/tintcolor.md)
- [isTranslucent](uikit/uisearchbar/istranslucent.md)
- [barStyle](uikit/uisearchbar/barstyle.md)
- [UIBarStyle](uikit/uibarstyle.md)

### Customizing the keyboard shortcut items

- [inputAssistantItem](uikit/uisearchbar/inputassistantitem.md)

### Configuring the search interface

- [showsBookmarkButton](uikit/uisearchbar/showsbookmarkbutton.md)
- [showsCancelButton](uikit/uisearchbar/showscancelbutton.md)
- [setShowsCancelButton(_:animated:)](uikit/uisearchbar/setshowscancelbutton(_:animated:).md)
- [showsSearchResultsButton](uikit/uisearchbar/showssearchresultsbutton.md)
- [isSearchResultsButtonSelected](uikit/uisearchbar/issearchresultsbuttonselected.md)

### Customizing the search bar appearance

- [backgroundImage](uikit/uisearchbar/backgroundimage.md)
- [backgroundImage(for:barMetrics:)](uikit/uisearchbar/backgroundimage(for:barmetrics:).md)
- [setBackgroundImage(_:for:barMetrics:)](uikit/uisearchbar/setbackgroundimage(_:for:barmetrics:).md)
- [image(for:state:)](uikit/uisearchbar/image(for:state:).md)
- [setImage(_:for:state:)](uikit/uisearchbar/setimage(_:for:state:).md)
- [positionAdjustment(for:)](uikit/uisearchbar/positionadjustment(for:).md)
- [setPositionAdjustment(_:for:)](uikit/uisearchbar/setpositionadjustment(_:for:).md)
- [inputAccessoryView](uikit/uisearchbar/inputaccessoryview.md)
- [searchFieldBackgroundImage(for:)](uikit/uisearchbar/searchfieldbackgroundimage(for:).md)
- [setSearchFieldBackgroundImage(_:for:)](uikit/uisearchbar/setsearchfieldbackgroundimage(_:for:).md)
- [searchFieldBackgroundPositionAdjustment](uikit/uisearchbar/searchfieldbackgroundpositionadjustment.md)
- [searchTextPositionAdjustment](uikit/uisearchbar/searchtextpositionadjustment.md)

### Configuring scope bar buttons

- [scopeButtonTitles](uikit/uisearchbar/scopebuttontitles.md)
- [selectedScopeButtonIndex](uikit/uisearchbar/selectedscopebuttonindex.md)
- [showsScopeBar](uikit/uisearchbar/showsscopebar.md)
- [setShowsScope(_:animated:)](uikit/uisearchbar/setshowsscope(_:animated:).md)

### Customizing the scope bar appearance

- [scopeBarBackgroundImage](uikit/uisearchbar/scopebarbackgroundimage.md)
- [scopeBarButtonBackgroundImage(for:)](uikit/uisearchbar/scopebarbuttonbackgroundimage(for:).md)
- [setScopeBarButtonBackgroundImage(_:for:)](uikit/uisearchbar/setscopebarbuttonbackgroundimage(_:for:).md)
- [scopeBarButtonDividerImage(forLeftSegmentState:rightSegmentState:)](uikit/uisearchbar/scopebarbuttondividerimage(forleftsegmentstate:rightsegmentstate:).md)
- [setScopeBarButtonDividerImage(_:forLeftSegmentState:rightSegmentState:)](uikit/uisearchbar/setscopebarbuttondividerimage(_:forleftsegmentstate:rightsegmentstate:).md)
- [scopeBarButtonTitleTextAttributes(for:)](uikit/uisearchbar/scopebarbuttontitletextattributes(for:).md)
- [setScopeBarButtonTitleTextAttributes(_:for:)](uikit/uisearchbar/setscopebarbuttontitletextattributes(_:for:).md)

### Managing dictation

- [isLookToDictateEnabled](uikit/uisearchbar/islooktodictateenabled.md)
- [UILookToDictateCapable](uikit/uilooktodictatecapable.md)

### Constants

- [UISearchBar.Icon](uikit/uisearchbar/icon.md)

## Relationships

### Inherits From

- [UIView](uikit/uiview.md)

### Conforms To

- [CALayerDelegate](quartzcore/calayerdelegate.md)
- [CLBodyIdentifiable](corelocation/clbodyidentifiable.md)
- [CMBodyIdentifiable](coremotion/cmbodyidentifiable.md)
- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCoding](foundation/nscoding.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [NSTouchBarProvider](appkit/nstouchbarprovider.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)
- [UIAccessibilityIdentification](uikit/uiaccessibilityidentification.md)
- [UIActivityItemsConfigurationProviding](uikit/uiactivityitemsconfigurationproviding.md)
- [UIAppearance](uikit/uiappearance.md)
- [UIAppearanceContainer](uikit/uiappearancecontainer.md)
- [UIBarPositioning](uikit/uibarpositioning.md)
- [UICoordinateSpace](uikit/uicoordinatespace.md)
- [UIDynamicItem](uikit/uidynamicitem.md)
- [UIFocusEnvironment](uikit/uifocusenvironment.md)
- [UIFocusItem](uikit/uifocusitem.md)
- [UIFocusItemContainer](uikit/uifocusitemcontainer.md)
- [UILargeContentViewerItem](uikit/uilargecontentvieweritem.md)
- [UILookToDictateCapable](uikit/uilooktodictatecapable.md)
- [UIPasteConfigurationSupporting](uikit/uipasteconfigurationsupporting.md)
- [UIPopoverPresentationControllerSourceItem](uikit/uipopoverpresentationcontrollersourceitem.md)
- [UIResponderStandardEditActions](uikit/uiresponderstandardeditactions.md)
- [UITextInputTraits](uikit/uitextinputtraits.md)
- [UITraitChangeObservable](uikit/uitraitchangeobservable-67e94.md)
- [UITraitEnvironment](uikit/uitraitenvironment.md)
- [UIUserActivityRestoring](uikit/uiuseractivityrestoring.md)

## See Also

### Search interface

- [UISearchContainerViewController](uikit/uisearchcontainerviewcontroller.md)
- [UISearchController](uikit/uisearchcontroller.md)
- [UISearchResultsUpdating](uikit/uisearchresultsupdating.md)
- [Displaying searchable content by using a search controller](uikit/displaying-searchable-content-by-using-a-search-controller.md)
- [Using suggested searches with a search controller](uikit/using-suggested-searches-with-a-search-controller.md)
