2016-02-14 3 views
1

Я хотел бы изменить цвет серой границы в моем Search Bar до белого цвета. Теперь это выглядит так:Как изменить цвет рамки SearchBar

search bar

я достиг этого эффекта после использования этой строки кода, но «внутри границ» по-прежнему серый:

var searchBar: UISearchController! 

    self.searchBar.searchBar.backgroundColor = UIColor.whiteColor() 
    self.searchBar.searchBar.layer.borderWidth = 3 
    self.searchBar.searchBar.layer.borderColor = UIColor.whiteColor().CGColor 
    self.searchBar.searchBar.layer.backgroundColor = UIColor.whiteColor().CGColor 
    self.searchBar.searchBar.tintColor = UIColor(red: 0.3, green: 0.63, blue: 0.22, alpha: 1) 

Может кто-нибудь помочь мне в этом?

ответ

6

Result of the code below.

self.searchBar.searchBar.searchBarStyle = UISearchBarStyle.Prominent 
self.searchBar.searchBar.translucent = false 
let textFieldInsideSearchBar = self.searchBar.searchBar.valueForKey("searchField") as? UITextField 
textFieldInsideSearchBar?.backgroundColor = UIColor.whiteColor() 
self.searchBar.searchBar.barTintColor = UIColor.whiteColor() 

Код выше даст вам все белые SearchBar, но, вероятно, будут черные полосы в верхней и нижней части SearchBar, как вы можете видеть из приложения. Если вы видите черные линии, и если вы не хотите их, измените;

self.searchBar.searchBar.barTintColor = UIColor.whiteColor() 

с

self.searchBar.searchBar.backgroundImage = UIImage(named: "nameOfYourWhiteImage") 

И вы будете иметь чистую белую SearchBar. Надеюсь, это решает вашу проблему. Удачи!

Смежные вопросы