微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在iOS7.1中颜色有变化,如何更改searchBar颜色?

在iOS7.0.3 – 7.0.6上,我的searchBar颜色是金色/黄色,如下所示:

但在iOS 7.1上,颜色变为如下:

我设置

searchBar.tintColor = [UIColor clearColor];
searchBar.backgroundColor = goldColor;
searchBar.tintColor = [UIColor blackColor];

我尝试了很多方法,但都失败了.任何人都可以找出iOS 7.1中的变化吗?

==============我的修复===============

我通过覆盖searchBar上的视图并将搜索文本作为子视图添加到此新视图来解决此问题.

我需要指出黄金状态栏是searchBar的子视图,它的框架是CGRectMake(0,-20,320,20),它的背景颜色是金色.

首先,我设置了这个:

_searchBar.translucent = YES;
_searchBar.scopeBarBackgroundImage = [self imageWithColor:UWGold];

看起来像这样:

然后,我展开视图覆盖状态栏,我更改了视图的frame.size.height searchBar的高度,然后使用这一行:

UITextField *textSearchField = [_searchBar valueForKey:@"_searchField"];

获取textSearchField,然后将此textSearchField添加到封面视图.

最后,searchBar与在iOS 7.0上完全一样

不是一个方法,我需要弄清楚iOS 7.1上有哪些变化并使用正确的方法来实现它.

解决方法

试试这个:

if(IOS_7)
{
self.searchBar.searchBarStyle = UISearchBarStyleMinimal;
self.searchBar.backgroundImage = [UIImage imageWithColor:[UIColor redColor] cornerRadius:5.0f];
}

希望这会对你有所帮助.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐