Я делаю переход UI между iOS 6 и iOS 7.
У нас есть UISearchBar, связанный с UISearchDisplayController, я установил backgroundImage для navigationBar и searchBar для изображения 1x1, динамически созданного с помощью цвета.
self.searchDisplayController.searchBar.translucent = NO;
self.searchDisplayController.searchBar.barTintColor = [UIColor clearColor];
self.searchDisplayController.searchBar.tintColor = [UIColor myTintColor];
self.searchDisplayController.searchBar.backgroundImage = [self imageWithColor:[UIColor myBGColor]];
self.searchDisplayController.searchBar.scopeBarBackgroundImage = [self imageWithColor:[UIColor myBGColor]];
На iOS6 все работает так, как ожидалось. На iOS7, когда выбран searchBar, scopeBar появляется с хорошим backgroundImage (устанавливается с помощью searchBar.scopeBarBackgroundImage), но searchBar является своего рода полупрозрачным серым. Когда я нажимаю кнопку "Отмена", возвращается backgroundImage searchBar.
/////////////////////////////////////////////////////////////////////////////////////////////////////
ОБЪЕДИНЕННЫЙ ВОПРОС
/////////////////////////////////////////////////////////////////////////////////////////////////////
На самом деле, я использовал barTintColor и другие опции здесь и там, но он не работает. Это результат того, что набор barTintColor имеет тот же цвет. Но есть этот белый слой сверху