在我的应用程序中,我添加了此搜索栏:
我尝试自定义按钮,效果很好,我正在使用
searchbar.setImage(UIImage(named: "Filter_icon"), forSearchBarIcon: .Bookmark, state: .Normal)
并且按钮图标已正确更改。现在我需要改变图标的颜色?我该怎么办?
提前致谢。
答案 0 :(得分:1)
尝试在资产目录中设置图像渲染模式。
iOS根据上下文选择渲染模式,当UIButton
图像渲染模式设置为模板时,Render as
图像渲染模式将设置为原始模式。
您可以在属性检查器中强制执行其行为。
首先,选择资产目录中的图像。你会看到的
在检查员Template image
的底部。
Original image
会覆盖视图色调的所有颜色
选择Default
以保留图像的颜色。
{{1}}是我上面描述的行为。
当然你的图像应该是橙色(就像我的轮胎是绿色的)。
答案 1 :(得分:1)
最简单的方法是更改图标颜色并渲染为原始颜色
searchBar.setImage(UIImage(named: "Filter_icon")!.imageWithRenderingMode(UIImageRenderingMode.AlwaysOriginal), forSearchBarIcon: .Bookmark, state: .Normal)
searchBar.showsBookmarkButton = true
答案 2 :(得分:0)
我终于解决了设置两个不同书签按钮的问题。一个蓝色和一个灰色像这样:
searchbar.setImage(UIImage(named: "Filter_icon_blue"), forSearchBarIcon: .Bookmark, state: .Normal)
searchbar.setImage(UIImage(named: "Filter_icon_gray"), forSearchBarIcon: .Bookmark, state: .Normal)
我在assets.xcassets中创建了两个image_set,我以编程方式更改了它。