Я столкнулся с самой странной ошибкой отображения в моем UISearchBar
.
Вот мой код, который отлично работает в другом приложении. (Я создаю панель поиска в коде, потому что файл xib невозможен.)
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";
Я хочу знать, что такое вызов по необходимости.
Хотя я поискал в википедии и нашел это здесь: http://en.wikipedia.org/wiki / Evaluation_strategy , но не мог понять толком. Если кто-нибудь сможет объяснить на примере и указать на разницу с вызовом по значению, это будет большим подспорьем.