2016-02-14 1 views
0

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

Для проверки: - создать новый проект Master/Detail - В детальном: добавить две кнопки, с именем: «Красный интерфейс» и «Синий интерфейс» - В DetailViewController, добавьте действия при

@IBAction func tapRed(sender: AnyObject) { 
    view.window!.tintColor = UIColor.redColor() 
} 


@IBAction func tapBlue(sender: AnyObject) { 
    view.window!.tintColor = nil 
} 

Теперь запустите приложение, создайте временную метку, перейдите к деталям, коснитесь redInterface, затем синий интерфейс Это нормально в подробном представлении, но когда вы вернетесь к Мастеру, элемент кнопки «+» будет красным, а не синим.

Я могу исправить проблему, установив настоящий синий цвет вместо nil, но это не долгосрочное решение, если Apple изменит значение tintColor по умолчанию.

Это ошибка? Есть ли что-то, что я могу сделать, чтобы обойти эту проблему?

ответ

1

Быстрый обходной путь будет сразу принести цвет в оттенок по умолчанию на начальной загрузки приложения и хранить его где-нибудь (т.е. по умолчанию пользователя)

От компании Apple iOS 7 UI Transition Guide (именно под Использование Оттенок цвета разделе ) ,

По умолчанию цвет оттенка представления равен нулю, что означает, что в представлении используется оттенок его родителя. Это также означает, что когда вы запрашиваете представление цвета оттенка, он всегда возвращает значение цвета, даже если вы его не задали.

0

Это хороший обходной путь!

На самом деле, мне даже не нужно хранить цвет. Если я изменяю

@IBAction func tapBlue(sender: AnyObject) { 
    view.window!.tintColor = UIButton(type:UIButtonType.System).titleColorForState(.Normal) 
} 

Это дает мне правильный синий цвет, даже если я изменил tintColor (вероятно, потому, что я не обращаюсь кнопками в иерархии представлений)

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