UISearchBar没有背景景观模式

Kev*_*tre 1 iphone cocoa-touch

我有以下代码片段从UISearchBar中删除背景:

for (UIView *subview in self.searchDisplayController.searchBar.subviews) 
{
    if ([subview isKindOfClass:NSClassFromString(@"UISearchBarBackground")]) 
    {
        [subview removeFromSuperview];
        break;
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,如果将设备旋转到横向,搜索栏后面会出现黑色背景.任何想法如何解决它?我不确定这是否没有记录.

谢谢!

小智 6

我刚遇到这个问题,发现很少帮助搜索.不幸的是,删除该功能不是一个选项,所以我不得不弄明白.看来,当您更改方向时,UISearchBar视图的背景会变黑.所以我的代码现在看起来像这样:

[searchBar setBackgroundColor:[UIColor clearColor]];
for (UIView *subview in searchBar.subviews)
{
    if ([subview isKindOfClass:NSClassFromString(@"UISearchBarBackground")])
        [subview removeFromSuperview];
}
Run Code Online (Sandbox Code Playgroud)