我有一個UISearchBar作爲UIToolbar中的UIBarButtonItem嵌套。基本功能正常,但取消按鈕和範圍欄拒絕顯示。我試着在界面生成器中啓用它們,我也嘗試過手動調用[searchBar setShowsCancelButton:YES]
,但這兩種方法都不起作用。有任何想法嗎?UIToolbar中的UISearchBar不會顯示取消按鈕
這是在iPad上。我在iOS 3中嘗試過,但它在4.2中也不起作用。
我有一個UISearchBar作爲UIToolbar中的UIBarButtonItem嵌套。基本功能正常,但取消按鈕和範圍欄拒絕顯示。我試着在界面生成器中啓用它們,我也嘗試過手動調用[searchBar setShowsCancelButton:YES]
,但這兩種方法都不起作用。有任何想法嗎?UIToolbar中的UISearchBar不會顯示取消按鈕
這是在iPad上。我在iOS 3中嘗試過,但它在4.2中也不起作用。
您只是在UISearchBar的工作方式上遇到了限制。一種解決方法是將UISearchBar覆蓋在UIToolbar上,而不是真正在工具欄中生存。這可以直觀地工作,因爲搜索欄就像工具欄一樣被繪製 - 它們的漸變是相同的。
您需要用另一個視圖來包裝UISearchBar。
UISearchBar *searchBar = [UISearchBar new];
UIView *searchBarContainer = [[UIView alloc] initWithFrame:searchBar.frame];
[searchBarContainer addSubview:searchBar];
UIBarButtonItem *searchBarItem =
[[UIBarButtonItem alloc] initWithCustomView:searchBarContainer];
是否真的有必要在搜索欄中使用取消按鈕?只需使用textDidChange方法來查看該字符串是否已被清除,並使用該方法來執行取消操作。
所以你在說當用戶刪除最後一個字符時,鍵盤應該關閉並編輯結束?這似乎是應用程序的狂妄行爲。 – SG1 2013-09-23 02:51:58