class PlaceSelectorViewController: UIViewController, GMSAutocompleteResultsViewControllerDelegate, UISearchBarDelegate, UISearchControllerDelegate {
我的课程中有UISearchBarDelegate
searchController?.searchBar.delegate = self
我已将代表设置为Self。
func searchBarCancelButtonClicked(_ searchBar: UISearchBar) {
stopHighlight()
}
但是这个委托电话不起作用
答案 0 :(得分:0)
您的UISearchBar需要outleet
(假设您正在使用Storyboard,这非常简单,只需通过助理编辑器拖放)。这就是你要添加委托的内容。如果您以编程方式构建,那么该变量将被分配给委托。
以下是 Storyboard 构建的示例代码
@IBOutlet weak var searchBar: UISearchBar!
(您必须在此右侧看到一个填充的圆圈,否则 Storyboard 与此 outlet 之间没有链接)
...
override func viewDidLoad() {
super.viewDidLoad()
searchBar.delegate = self
}