iOS 7中,搜索模式下的范围栏变为黑色

3
我使用UISearchDisplayController嵌入到UiTableViewController中,在我的表视图中添加了一个搜索栏。但是,如果我设置搜索栏的背景图片,那么范围条在搜索模式下不会显示,而是显示为黑色条。这非常奇怪,因为在iOS 6中并没有发生这种情况。
请注意,我用来设置搜索栏背景图像的图像大小为640x90像素,以某种方式,如果使用其他图像,范围条将会显示。
即使我设置了范围条背景图像,它也不会随搜索栏的图像设置而显示。
我认为这是iOS 7中的一个错误,并为了防止其他因素,我甚至在Xcode 5中使用主细节模板,在主视图控制器中嵌入了UISearchDisplayController,更改搜索栏背景图像,范围条在搜索模式下显示为黑色。我认为这与iOS 7自动调整视图控制器有关。让我很苦恼。
请有经验的人帮帮忙。非常感谢。有时候如果我更改搜索栏背景图像,范围条会显示,但在真实设备(iPhone5)上,范围条从未显示过。
2个回答

2
我在这里找到了一个解决方案:IOS7状态栏在搜索激活后变为黑色 只需在您的表视图控制器(viewDidLoad)中添加以下两行即可:
self.navigationController.view.backgroundColor = [UIColor whiteColor]; 

self.navigationController.navigationBar.translucent = NO;

其中,“whiteColor”是您需要用于状态栏的颜色。


感谢您在两个多月后仍然发布了这篇文章。是的,“半透明”有一些问题。 - JimZ

0
我通过使用UISearchBar外观解决了这个问题:
[[UISearchBar appearance] setBackgroundImage:bgImage forBarPosition:UIBarPositionTopAttached barMetrics:UIBarMetricsDefault];

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接