1

Я использую searchcontroller на мой взгляд, но я не могу избавиться от раздражающего фона панели поиска.Как получить панель поиска фона прозрачный? (См. Изображение)

код я использую:

import UIKit 

class systemTable: UITableViewController, UISearchBarDelegate , UISearchResultsUpdating{ 

@IBOutlet var systemTable: UITableView! 
var searchController = UISearchController() 


override func viewDidLoad() { 
    super.viewDidLoad() 

    self.searchController = ({ 
     let controller = UISearchController(searchResultsController: nil) 
     controller.searchResultsUpdater = self 
     controller.searchBar.sizeToFit() 
     controller.searchBar.delegate = self 
     controller.searchBar.barTintColor = UIColor.lightGrayColor() 
     controller.searchBar.translucent = true 
     controller.searchBar.alpha = 1 

     controller.searchBar.backgroundColor = UIColor.clearColor() 
     controller.searchBar.layer.opacity = 1 
     self.tableView.tableHeaderView = controller.searchBar 
     return controller 
    })() 


} 

Изображение: enter image description here

Чтобы было ясно: я хочу, чтобы избавиться от фона, который окрашен в серый цвет на изображении выше.

Любая помощь приветствуется

@@@@@@@@@@@@@@@@@enter image description here EDIT @@@@@@@@@@@@@@@@@ Новое изображение (при попытке прокрутки вниз):

+0

Попробуйте этот контроллер.searchBar.barTintColor = UIColor.clearColor() controller.searchBar.backgroundImage = UIImage() – Chandan

+0

Работает отлично! И когда я сползаю вниз, я все еще вижу серое, поднимающееся сверху, как я могу избавиться от этого? @ChandanPrajapati – DNC

+0

, какую версию iOS вы используете? – Chandan

ответ

2

enter image description here

Сво работает нормально для меня, но я уверен, что вы г близки к решению. просто попробуйте где-нибудь пропустить.

Вот мой код

searchController.searchBar.translucent = true 
    searchController.searchBar.alpha = 1 
    searchController.searchBar.backgroundImage = UIImage() 
    searchController.searchBar.barTintColor = UIColor. clearColor() 
+0

Отличное решение! В моем случае мне понадобилось светло-серое текстовое поле на белом фоне. В дополнение к вашему решению я добавил: если пусть txfSearchField = searchController.searchBar.value (forKey: "_searchField") как? UITextField { txfSearchField.borderStyle = .none txfSearchField.backgroundColor = colorSBar txfSearchField.layer.cornerRadius = 10 txfSearchField.clipsToBounds = истина } –

0

Похоже на сером фоне, вы видите там цвет фона вашего UITableView и не SearchBar/SearchController

0

пытаются изменить цвет Bar Tint , который работал для меня.

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

  • Нет связанных вопросов^_^