iOS11 设置搜索栏取消按钮颜色

来源:互联网 发布:免费流量控制软件 编辑:程序博客网 时间:2024/05/17 23:52

iOS11 取消按钮颜色变白的解决

取消按钮所在的搜索栏背景色为白色,取消按钮之前使用setTitleColor:forState:来设置字体颜色。但是在iOS11 中,该方法失效,导致取消按钮消失不见(字体颜色与搜索栏背景色重合了)。
在网上搜索,没有发现有人遇到过类似的问题,特记录解决方案。

这个是关键代码:

//self.searchBar为搜索栏UIButton *cancleBtn = [self.searchBar valueForKey:@"cancelButton"];    //修改标题和标题颜色    NSAttributedString *attributedTitle = [[NSAttributedString alloc] initWithString:@"取消" attributes:@{NSForegroundColorAttributeName:[UIColor  blackColor]}];    [cancleBtn setAttributedTitle:attributedTitle forState:UIControlStateNormal];

小结

尝试多个方案,说不定换了方案即可达到效果。本例中setTitleColor:forState:setAttributedTitle:forState:均可实现修改字体颜色,但是iOS11中前者失效了。

原创粉丝点击