【问题标题】:search bar color is not exact in seacrhDisplayControllerseacrhDisplayController 中的搜索栏颜色不准确
【发布时间】:2017-03-23 16:33:54
【问题描述】:

我的应用程序中有搜索栏,问题是当我单击开始输入搜索栏时会改变颜色。我想以编程方式设置它(通过 self.seacrhDisplayController.searchBar),但它是只读的。知道如何设置确切的颜色吗? 谢谢

search bar in my view controller

search bar in search display controller

【问题讨论】:

  • 你能说得更具体点吗,你想改变背景的颜色吗?
  • 是的,我添加了图片,以便您看到差异。

标签: ios swift xcode uisearchdisplaycontroller


【解决方案1】:

这是用

完成的
self.searchDisplayController?.searchBar.barTintColor = UIColor.black
self.searchDisplayController?.searchBar.isTranslucent = false

如果您使用 Storyboard 创建它,请首先确保

  • SearchDisplayController 引用出口 设置为 文件所有者
  • 搜索栏 引用出口设置为搜索显示控制器

编辑 - 添加图像和 alpha 解决方案

需要移除背景图片或设置具有所需颜色的背景图片。

self.searchDisplayController?.searchBar.backgroundImage = UIImage() 要么 self.searchDisplayController?.searchBar.backgroundImage = UIImage(named: "search_background")

注意: 如果你想摆脱弃用的警告,你必须创建一个 UISearchController,这在 Storyboard 中不可用

Useful UISearchController tutorial

希望这会有所帮助。

【讨论】:

  • 谢谢,但没有解决搜索显示控制器颜色仍然较浅的问题。
  • 问题是有一个带有 alpha 的背景图像...你可以做self.searchDisplayController?.searchBar.backgroundImage = UIImage() 或者将背景图像设置为具有所需颜色的背景图像
  • 您可以将backgroundImage设置为UIImage(),然后将backgroundColor更改为所需的
  • 我试过了,但仍然没有解决我的问题。我不知道为什么,但是 backgroundColor 仅在我的视图控制器中更改了搜索栏颜色,栏色调颜色在搜索显示控制器中更改了颜色
猜你喜欢
  • 2020-07-10
  • 1970-01-01
  • 2022-06-29
  • 2013-10-10
  • 2012-05-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多