我正在 iOS 6 和 iOS 7 之间转换 UI。
我们有一个与 UISearchDisplayController 相关的 UISearchBar,我将 navigationBar 和 searchBar 的 backgroundImage 设置为使用颜色动态创建的 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 是一种半透明的灰色。当我按下 Cancel 时,searchBar backgroundImage 又回来了。
///////////////////////////////////////// ///////////////////////////////////////// /
编辑问题
///////////////////////////////////////// ///////////////////////////////////////// /
实际上,我确实在这里和那里使用了 barTintColor 和其他选项,但它不起作用。这就是 barTintColor 设置为相同颜色的结果。但是上面有这个白色层