2

我有一個標準的iOS UITableView和UISearchBar。它一切正常。我實現了一種方法,當用戶通過實施searchBarCancelButtonClicked:(UISearchBar *)searchBar委託方法點擊「取消」按鈕時隱藏搜索欄。這很好。在UISearchDisplayController中檢測「沒有顯示的搜索結果」點擊

但這裏是我的問題:

當用戶點擊搜索按鈕,並且不搜索任何東西,當他/她輕叩在沒有搜索結果將顯示在變暗了空間沒有委託方法被調用。你知道我的意思嗎?將顯示「無結果」或搜索結果的那個。當沒有文字輸入到搜索欄時,這個變暗的空間是空的 - 並對用戶的觸摸作出反應(取消搜索表格視圖)。

是否有與此觸摸事件關聯的委託方法?或者是否有解決方法來檢測這種特定的觸摸?

您可以檢查我的代碼在GitHub上:https://github.com/versluis/Table-Seach-2013

下面是截圖來說明:

enter image description here

回答

3
- (void)searchDisplayControllerDidEndSearch:(UISearchDisplayController *)controller 
+0

我已經試過了。我的類符合UISearchDisplayDelegate協議,但該方法從未被調用 - 即使搜索實際結束時也是如此。 –

+0

它確實被調用,確保你將自己設置爲delegate,比如self.searchController.delegate = self。這樣做viewWillAppear或 – Live2Enjoy7

+0

我有同樣的問題比@JayVersluis和這個作品!謝謝。 –

-1
-(void)willDismissSearchController:(UISearchController *)searchController 
+1

請只爲代碼添加一些說明而已 – prasun