[英]How to trigger cancel button in UISearchBar?
如何在 UISearchBar 中以編程方式觸發取消按鈕,就像您點擊了取消按鈕一樣?
我在 UITableView 的頂部有一個 UISearchBar,搜索后,當有人選擇一行時,我想以編程方式觸發 UISearchBar 中的取消按鈕?
編輯:沒有用戶交互。
對於使用搜索顯示控制器的視圖控制器,您可以設置
self.searchDisplayController.active = NO;
// or:
[self.searchDisplayController setActive:NO animated:YES];
關閉搜索界面。
您需要實現UISearchBarDelegate
。 完成后,請使用:
- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar
告訴委托取消按鈕已被點擊。
然后使用:
[self searchBarCancelButtonClicked:yourSearchBar];
對於新的UISearchController (在 2014 年隨 iOS 8 引入),您可以調用:
[self.searchController setActive:FALSE];
要么
self.searchController.active = FALSE;
(沒有動畫標志,我發現它總是有動畫效果。)
對於iOS 8,使用UISearchController
,以編程方式實現取消按鈕動作,使用:
[self.searchController setActive:NO];
對於 Swift 4.2 版本,您可以編寫如下代碼:
searchController?.isActive = false
self.navigationItem.searchController?.isActive = false // above iOS 8.0
// or:
self.searchDisplayController.active = NO; // was deprecated in iOS 8.0
// or:
[self.searchDisplayController setActive:NO animated:YES]; // Obejective-C
這些是完成上述任務的一些變體
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.