【发布时间】:2020-02-28 04:53:58
【问题描述】:
我正在尝试以编程方式将搜索栏添加到我的视图控制器,但问题
我遇到的是搜索栏在视图控制器中不可见,我想知道如何在视图控制器中显示搜索栏。
class LocationViewController: UIViewController {
let locationManager = CLLocationManager()
var resultSearchControlle: UISearchController? = nil
@IBOutlet weak var mapView: MKMapView!
override func viewDidLoad() {
super.viewDidLoad()
let locationSearchTable = storyboard!.instantiateViewController(identifier: "LocationSearchTable") as! LocationTableViewController
resultSearchControlle = UISearchController(searchResultsController: locationSearchTable)
resultSearchControlle?.searchResultsUpdater = locationSearchTable
let searchBar = resultSearchControlle!.searchBar
searchBar.sizeToFit()
searchBar.placeholder = "Search for a place"
navigationItem.titleView = resultSearchControlle?.searchBar
navigationItem.hidesSearchBarWhenScrolling = false
definesPresentationContext = true
locationSearchTable.mapView = mapView
}
【问题讨论】:
-
iOS 11+?试试
navigationItem.searchController = resultSearchControlle -
是的,它是 iOS 11+,我确实尝试过,但无济于事
-
你只是在添加搜索栏...而不是控制器
-
我认为您的问题可能是您没有用于显示搜索栏的导航栏。如果您将 LocationViewController 嵌入到导航控制器中,我认为搜索栏可能会按预期显示。