Search Integration
Add search functionality using the built-in search bar or native iOS navigation search.
Two Search Options
- Embedded search bar - Built into the table header
- Navigation bar search - Uses
UISearchControllerin the navigation bar
Embedded Search Bar
Enabled by default. Customize visibility:
var config = DataTableConfiguration()
config.shouldShowSearchSection = true // Default
config.shouldSearchHeaderFloat = true // Stays visible while scrolling
let dataTable = SwiftDataTable(data: items, columns: columns, options: config)Hiding the Search Bar
config.shouldShowSearchSection = falseNavigation Bar Search
For a native iOS look, use UISearchController:
class MyViewController: UIViewController {
var dataTable: SwiftDataTable!
override func viewDidLoad() {
super.viewDidLoad()
dataTable = SwiftDataTable(data: items, columns: columns)
view.addSubview(dataTable)
// One line to enable navigation bar search
dataTable.installSearchController(on: self)
}
}Custom Search Controller
let searchController = dataTable.makeSearchController()
searchController.searchBar.placeholder = "Search products..."
searchController.obscuresBackgroundDuringPresentation = false
navigationItem.searchController = searchController
navigationItem.hidesSearchBarWhenScrolling = falseSearch Behavior
Search filters across all visible columns. A row matches if any column contains the search text (case-insensitive).