<!--
{
  "availability" : [
    "iOS: 3.0.0 - 8.0.0",
    "iPadOS: 3.0.0 - 8.0.0",
    "macCatalyst: 13.1.0 - 13.1.0"
  ],
  "documentType" : "symbol",
  "framework" : "UIKit",
  "identifier" : "/documentation/UIKit/UISearchDisplayDelegate/searchDisplayController(_:shouldReloadTableForSearch:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "UIKit"
    ],
    "preciseIdentifier" : "c:objc(pl)UISearchDisplayDelegate(im)searchDisplayController:shouldReloadTableForSearchString:"
  },
  "title" : "searchDisplayController(_:shouldReloadTableForSearch:)"
}
-->

# searchDisplayController(_:shouldReloadTableForSearch:)

Asks the delegate if the table view should be reloaded for a given search string.

```
optional func searchDisplayController(_ controller: UISearchDisplayController, shouldReloadTableForSearch searchString: String?) -> Bool
```

## Parameters

`controller`

The search display controller for which the receiver is the delegate.

`searchString`

The string in the search bar.

## Return Value

<doc://com.apple.documentation/documentation/Swift/true> if the display controller should reload the data in its table view, otherwise <doc://com.apple.documentation/documentation/Swift/false>.

## Discussion

If you don’t implement this method, then the results table is reloaded as soon as the search string changes.

You might implement this method if you want to perform an asynchronous search. You would initiate the search in this method, then return <doc://com.apple.documentation/documentation/Swift/false>. You would reload the table when you have results.

---

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)