UIAppearance край вставки - PullRequest
1 голос
/ 27 мая 2019

У меня есть подкласс UIView, который я использую в своем приложении (и находится в сторонней библиотеке) для отображения уведомлений о тостах. Я хочу немного изменить это для другого приложения, над которым я работаю, и поэтому я добавляю свойства стиля через UIAppearance. У меня некоторые работают, но некоторые из них отказываются работать должным образом!

/// The visible duration of the toast view
@objc public dynamic var visibleDuration: CGFloat = 2.0

/// The margins to apply around the toast view
@objc public dynamic var margins: UIEdgeInsets = .zero

visibleDuration отлично работает здесь и устанавливается ToastView.appearance().visibleDuration = 6, но margins никогда не равно нулю! Есть ли что-то особенное, что мне нужно сделать, чтобы поддержать настройку UIEdgeInsets через UIAppearance?

1 Ответ

0 голосов
/ 16 июня 2019

Оказывается, это было правильно установлено, но из-за характера моего класса, в момент, когда я пытался выложить свое представление, используя их, они не были доступны как их значения UIAppearance.Похоже, что представление должно быть добавлено в иерархию окон до того, как значения обновлены, чтобы отразить их значения UIAppearance!Перемещение по моему коду компоновки после добавления в окно исправило это!

...