Как сбросить прозрачный «большой заголовок» UINavigationBar к настройкам внешнего вида по умолчанию? - PullRequest
0 голосов
/ 26 марта 2019

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

Я использую следующую функцию setTransparent() для настройки моей прозрачной панели навигации.

Функция reset() успешно сбрасывает навигационную панель размера по умолчанию, но не в состоянии сбрасывать навигационную панель «большой заголовок».

extension UINavigationBar {

    func setTransparent() {

        // set large titles
        self.prefersLargeTitles = true

        // set colour of nav items
        self.tintColor = .white

        // set background colour
        self.barTintColor = .green

        // make transparent
        self.setBackgroundImage(UIImage(), for: .default)
        self.shadowImage = UIImage()
        self.isTranslucent = true
    }

    func reset() {
        self.setBackgroundImage(nil, for: .default)
        self.shadowImage = nil
        self.isTranslucent = false
    }
}

Я думаю, что это связано с тем, что «большие заголовки» не работают сBackgroundImage / ShadowImage ...

1 Ответ

0 голосов
/ 26 марта 2019

Вы можете попробовать эту функцию для сброса в режиме большого заголовка:

func setTransparent() {

    // set large titles
    self.prefersLargeTitles = false

    // set colour of nav items
    self.tintColor = .white

    // set background colour
    self.barTintColor = .green
self.backgroundColor = nil
    // make transparent
    self.setBackgroundImage(UIImage(), for: .default)
    self.shadowImage = UIImage()
    self.isTranslucent = true
}

func reset() {
    self.setBackgroundImage(nil, for: .default)
    self.shadowImage = nil
    self.backgroundColor = UIColor.green

    self.isTranslucent = false
   self.largeTitleTextAttributes = [NSAttributedString.Key.foregroundColor : UIColor.green]
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...