Дизайн UISearchTextField изменяется только после того, как приложение выходит на передний план - PullRequest
0 голосов
/ 02 апреля 2020

В настоящее время я пытаюсь настроить поле UISearchText. Я столкнулся с одной проблемой: cornerRadius применяется только после того, как приложение было отправлено в фоновый режим и возвращено на передний план. Я что-то упускаю, что cornerRadius также изначально применяется?

Это мой код для настройки:

final class TransactionSearchController: UISearchController {
private lazy var customSearchBar = TransactionSearchBar()
override var searchBar: UISearchBar { customSearchBar }

init(colorScheme: ColorScheme) {
    super.init(searchResultsController: nil)
    self.obscuresBackgroundDuringPresentation = true

    self.searchBar.barTintColor = colorScheme.backgroundColor
    self.searchBar.searchTextField.backgroundColor = UIColor.colorWithLight(
        Color.Input.background,
        dark: Color.black.withAlphaComponent(0.5)
    )
    self.searchBar.searchTextField.borderStyle = .none
    self.searchBar.searchTextField.tintColor = Color.blue
    self.searchBar.searchTextField.leftView?.tintColor = Color.blue
    self.searchBar.searchTextField.font = Font.contentText

    self.searchBar.searchTextField.layer.cornerRadius = 6.0
    self.searchBar.searchTextField.layer.applyShadow(
        offset: CGSize(width: 0.0, height: 6.0),
        radius: 5.0,
        opacity: 0.2
    )
}

required init?(coder: NSCoder) {
    fatalError("init(coder:) has not been implemented")
}

}

Этот метод вызывается в viewWillAppear родительского ViewController. но я тоже попробовал с viewDidLoad

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...