自定义搜索栏颜色

UI设计人员总是对默认元素外观不满意,并试图通过自定义外观控件展示自己的创造力。 作为负责用代码实现设计的人,您可能会为UIKit默认控件的困难和灵活性感到沮丧。 在这里,我想分享一些自定义UISearchBar对象的技巧和片段。

想象一下您的任务是使搜索栏与应用程序的配色方案匹配的情况。

首先,让我们回顾一下最明显的着色选项,并意识到它根本不明显。

  searchBar.backgroundColor = UIColor.green 

乍一看,它似乎什么也没做,但是,如果您具有良好的色彩感知能力或借助“色度计”工具,您会注意到所需的色彩已与搜索栏的默认灰度混合在一起。

实际上,它可以按预期工作并更改视图的背景色。 但是您只能通过其顶部的半透明条形视图来查看它。

那么,如何更改此障碍并为搜索栏获得纯色背景色?

  searchBar.barTintColor = UIColor.green 

此代码更改了此条形图的颜色,因此不再是问题。

文本字段呢? 颜色没有属性。 您需要像这样创建UISearchBar类扩展:

作为额外的触摸,让我们尝试在上述文本视图中更改光标颜色。

  searchBar.tintColor = UIColor.green 

那图标呢?

您可以使用以下扩展名访问和自定义放大镜图标:

占位符文本颜色也可以使用类似的代码进行自定义(但具有按键式的价值):

目前为止就这样了。 如果我忘记了一些内容,我将在此处添加有关UISearchBar的更多提示。 使用Swift编写有趣的代码。