私のプロジェクトでは、UITableViewController
と内部UISearchController
を使用して、tableView
のデータをフィルタリングしています。
データをフィルター処理するのに問題はありませんが、[〜#〜] cancel [〜#〜]ボタンtableView
をクリックしたときにUISearchController
の再読み込みの日付を作成する必要がありますが、このためのデリゲートメソッド.。
この問題を解決する方法を理解するのを手伝ってもらえますか?
UISearchController
searchBar's
delegate
を設定する必要があります。これを実行すると、デリゲートメソッドsearchBarCancelButtonClicked:
の追加が適切に呼び出されます。
self.searchController.searchBar.delegate = self;
- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar {
}
UISearchResultsUpdating
プロトコルを実装すると、active
がfalse
のときにキャンセルがトリガーされることがわかります。
func updateSearchResultsForSearchController(searchController: UISearchController) {
if !searchController.isActive {
print("Cancelled")
}
}