UIAppearance
Наследование
Не применимый
Оператор импорта
Swift
import UIKit
Objective C
@import UIKit;
Доступность
Доступный в iOS 5.0 и позже.
Используйте UIAppearance
протокол для получения появления проксирует для класса. Можно настроить появление экземпляров класса путем отправки сообщений модификации появления в прокси появления класса.
Существует два способа настроить появление для объектов: для всех экземпляров, и для экземпляров содержится в экземпляре контейнерного класса.
Для настройки появления всех экземпляров класса использовать
appearance
для получения появления проксируют для класса. Например, для изменения фона панели окрашивают цвет для всех экземпляровUINavigationBar
:[[UINavigationBar appearance] setBarTintColor:myNavBarBackgroundColor];
Настроить появления для экземпляров класса, когда содержится в экземпляре контейнерного класса или экземплярах в иерархии, использовании
appearanceWhenContainedIn:
для получения появления проксируют для класса. Например, для изменения появления кнопок панели, на основе объекта, содержащего панель навигации:[[UIBarButtonItem appearanceWhenContainedIn:[UINavigationBar class], nil]
setBackgroundImage:myNavBarButtonBackgroundImage forState:state barMetrics:metrics];
[[UIBarButtonItem appearanceWhenContainedIn:[UINavigationBar class], [UIPopoverController class], nil]
setBackgroundImage:myPopoverNavBarButtonBackgroundImage forState:state barMetrics:metrics];
[[UIBarButtonItem appearanceWhenContainedIn:[UIToolbar class], nil]
setBackgroundImage:myToolbarButtonBackgroundImage forState:state barMetrics:metrics];
[[UIBarButtonItem appearanceWhenContainedIn:[UIToolbar class], [UIPopoverController class], nil]
setBackgroundImage:myPopoverToolbarButtonBackgroundImage forState:state barMetrics:metrics];
В любой данной иерархии представления наиболее удаленное появление проксирует победы. Специфика (глубина цепочки) является дополнительным временем. Другими словами, оператор включения в appearanceWhenContainedIn:
обрабатывается как частичное упорядочивание. Учитывая упорядочивание бетона (фактическая иерархия подпредставления), UIKit выбирает частичное упорядочивание, которое является первым уникальным соответствием при чтении фактической иерархии из окна вниз.
Можно далее совершенствовать, каким экземплярам класса настроят их появление путем указания набора черты. Используйте appearanceForTraitCollection:
и appearanceForTraitCollection:whenContainedIn:
методы для получения прокси для класса с указанным набором черты.
Для поддержки настройки появления класс должен соответствовать UIAppearanceContainer
протокол и соответствующие методы доступа должны быть отмечены с UI_APPEARANCE_SELECTOR
.
-
появление () + появление
ТребуемыйВозвращает прокси появления для получателя. (требуемый)
Объявление
Swift
static func appearance() -> Self
Objective C
+ (instancetype)appearance
Возвращаемое значение
Прокси появления для получателя.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 5.0 и позже.
-
Возвращает прокси появления для получателя, имеющего переданный набор черты. (требуемый)
Объявление
Swift
static func appearanceForTraitCollection(_
trait
: UITraitCollection) -> SelfObjective C
+ (instancetype)appearanceForTraitCollection:(UITraitCollection *)
trait
Параметры
trait
Набор черты используется для соответствия.
Возвращаемое значение
Прокси появления для получателя.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.
-
Возвращает прокси появления для получателя в данной иерархии вместимости, имеющей переданный набор черты. (требуемый)
Объявление
Objective C
+ (instancetype)appearanceForTraitCollection:(UITraitCollection *)
trait
whenContainedIn:(Class<UIAppearanceContainer>)ContainerClass
,...
Параметры
trait
Набор черты используется для соответствия.
ContainerClass,
Завершенный нолем список контейнерных классов появления.
Возвращаемое значение
Прокси появления для получателя в данной иерархии вместимости.
Обсуждение
Этот метод выдает исключение для любого элемента в списке var-args, который не является Объектом класса, соответствующим
UIAppearanceContainer
протокол.Оператор импорта
Objective C
@import UIKit;
Доступность
Доступный в iOS 8.0 и позже.
-
+ appearanceWhenContainedIn:
ТребуемыйВозвращает прокси появления для получателя в данной иерархии вместимости. (требуемый)
Объявление
Objective C
+ (instancetype)appearanceWhenContainedIn:(Class<UIAppearanceContainer>)
ContainerClass
,...
Параметры
ContainerClass,
Завершенный нолем список контейнерных классов появления.
Возвращаемое значение
Прокси появления для получателя в данной иерархии вместимости.
Обсуждение
Этот метод выдает исключение для любого элемента в списке var-args, который не является Объектом класса, соответствующим
UIAppearanceContainer
протокол.Оператор импорта
Objective C
@import UIKit;
Доступность
Доступный в iOS 5.0 и позже.