簡體   English   中英

UISearchBar取消按鈕沒有響應

[英]UISearchBar cancel button not responding

我已經實現了搜索欄,一旦用戶在搜索欄中有焦點,就會顯示取消按鈕。 為此,我寫了searchBar.showsCancelButton = YES; 在我的searchBarTextDidBeginEditing方法中。 searchBarSearchButtonClicked ,我searchBarSearchButtonClicked鍵盤,以便用戶可以查看完整的tableview。

問題:此時搜索欄取消按鈕沒有響應。 它只會在搜索欄再次獲得焦點時響應。 這是搜索欄取消按鈕的默認屬性還是我在代碼中遺漏了一些東西。 我想使用取消按鈕而不再在搜索欄中給焦點。

這是搜索欄取消按鈕的默認行為。 如果您想要其他功能,可以取消選中搜索欄的cancelbutton屬性,並可以使用UIButton作為取消按鈕。

是的,你可以讓你的UISearchBar取消按鈕響應。 默認情況下,它是禁用的,但您可以訪問它的子視圖,然后將enable設置為取消按鈕。

for (id object in [mySearchBar subviews])
{
    if ([object isKindOfClass:[UIButton class]])
    {
        UIButton *searchBarCancelBtn = (UIButton*)object;
        [searchBarCancelBtn setEnabled:YES];
    }
}

如果您想在UISearchBar文本字段中使用其他邏輯自定義清除按鈕,請按照此答案操作

我認為它是UISearchBar的默認行為,當它獲得焦點然后才會啟用取消按鈕。 UISearchBar無焦點時無法獲取取消按鈕事件。

所以,我完成你的任務的是,

  • 創建一個ToolBar
  • UIBarButtonItem作為UISearchBar插入自定義視圖
  • 使用操作插入名為“Cancel”的UIBarButtonItem

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM