iOS 6 と iOS 7 の間で UI の移行を行っています。
UISearchDisplayController に関連する UISearchBar があります。navigationBar の backgroundImage と 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 を選択すると、適切な backgroundImage (searchBar.scopeBarBackgroundImage で設定) で scopeBar が表示されますが、searchBar は一種の半透明の灰色です。キャンセルを押すと、searchBar backgroundImage が戻ってきました。
/////////////////////////////////////////////// /////////////////////////////////////////////// /
編集された質問
/////////////////////////////////////////////// /////////////////////////////////////////////// /
実際、barTintColor やその他のオプションをあちこちで使用しましたが、機能しません。これは、barTintColor を同じ色に設定した結果です。しかし、上にこの白い層があります