我遇到了最奇怪的顯示錯誤與我的UISearchBar
。
這是我的代碼,完美地在另一個應用程序。 (我在代碼中創建搜索欄是因爲xib文件不可行。)UISearchBar顯示錯誤:文本太離開了,重疊放大鏡圖標
searchBar = [[UISearchBar alloc] initWithFrame:
CGRectMake(0, 0, self.tableView.frame.size.width, 44)];
searchBar.delegate = self;
searchController = [[UISearchDisplayController alloc]
initWithSearchBar:searchBar contentsController:self];
searchController.delegate = self;
searchController.searchResultsDataSource = self;
searchController.searchResultsDelegate = self;
self.tableView.tableHeaderView = searchBar;
搜索功能等工作正常。但奇怪的是,在搜索欄看起來像這樣,無論是設備和模擬器上:
- 佔位符字符串不應該存在,但進一步的權利。
- 當我輸入搜索文本時,它也開始太左,顯示放大鏡圖標。
- 此外,將
searchBar.placeholder
或searchBar.prompt
設置爲@""
或nil
不會刪除此「搜索」佔位符。 (然而,
searchBar.placeholder = @"FooBar";
會,但仍然在錯誤的位置顯示「FooBar的」。 - 最後,我覺得很奇怪的是,字符串「搜索」雖然我已經將語言設置爲別的東西(比方說,德國)。
任何幫助嗎?的最緊迫的問題是文本得到了正確的。
我剛剛注意到右側的索引標題(可以看到圖像中的「A」和搜索符號)自動將搜索框的右邊緣向左移動。也許它也將佔位符/搜索字符串移動了相同的距離(儘管它不應該)? – Mundi 2011-04-04 21:07:27
刪除索引標題沒有修復它。 – Mundi 2011-04-05 07:27:12
我的應用程序出現同樣的問題。我以前的版本沒問題。但是,它剛剛發生。我仍在尋找解決方案。順便說一句,我的searchBar是在XIB中定義的。 – RoIT 2011-04-19 02:19:33