2

我在我的表格视图中使用了 searchDisplayController。我已经有了可以工作的功能,我现在正在配置 UI。

我想要红色的搜索栏(包括范围栏)和白色的文本。我已经通过 Interface Builder 完成了这项工作,看起来不错。

在构建它时,它看起来像这样(忽略 tableview 中的白色块): 在此处输入图像描述

颜色应该是这样的,由 Interface Builder 生成。

在此处输入图像描述

搜索栏是半透明的。我没有选中搜索栏的半透明。

阅读这个答案,我试过把

self.searchDisplayController.searchBar.translucent = NO;

在我的 viewDidLoad 和 viewWillAppear 中。不幸的是,两者都没有奏效。

似乎没有任何工作。我在iOS7和iOS7.1下试过这个。

任何帮助都会很棒。

4

1 回答 1

1

以下对我有用,可以使搜索栏变成不透明的红色:

UIGraphicsBeginImageContextWithOptions(CGSizeMake(10,10), YES, 0);
CGContextSetFillColorWithColor(UIGraphicsGetCurrentContext(), [UIColor redColor].CGColor);
CGContextFillRect(UIGraphicsGetCurrentContext(), CGRectMake(0,0,10,10));
UIImage* red = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
searchBar.backgroundImage = red;

它适用于我,包括您的情况,即属于带有表格视图控制器的 UISearchDisplayController 的搜索栏。

于 2014-03-17T02:58:15.740 回答