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

时间:2013-10-07 13:43:28

标签: ios uisearchbar

我使用嵌入到UiTableViewController的UISearchDisplayController在我的表视图中创建一个搜索栏。但是,如果我设置搜索栏的背景图像,则范围栏不会在搜索模式下显示,而是显示黑条。这很奇怪,因为在iOS 6中不会发生这种情况。

请注意,我用来设置搜索栏背景图像的图像是640x90像素,如果使用其他图像,不知何故范围栏会显示。

即使我设置了范围栏背景图像,它也不会显示取决于搜索栏的图像设置。

我认为这是iOS 7中的一个错误,为了防止出现其他因素,我甚至在Xcode 5中使用了master-detail模板,并在主视图控制器中嵌入了UISearchDisplayController,更改了搜索栏背景图像和范围栏显示在搜索模式下黑色。

我认为这与iOS 7自动调整视图控制器大小有关。让我很烦恼。

有人请尝试帮忙。非常感谢。

------------------------------编辑---------------- ---------- 有时,范围栏会显示我是否更改了搜索栏背景图像,但在实际设备(iPhone5)中,范围栏从不显示。

2 个答案:

答案 0 :(得分:2)

我刚刚在这里找到了一个解决方案:IOS7 Status bar change to black after search is active

只需将这两行放在表视图控制器(viewDidLoad)上:

self.navigationController.view.backgroundColor = [UIColor whiteColor]; 

self.navigationController.navigationBar.translucent = NO;

其中“whiteColor”是状态栏所需的颜色。

答案 1 :(得分:0)

我已使用UISearchBar外观解决了这个问题:

[[UISearchBar appearance] setBackgroundImage:bgImage forBarPosition:UIBarPositionTopAttached barMetrics:UIBarMetricsDefault];