Я применил свою функцию applyVibrancy
к методу viewDidLoad
моего mainViewController
для моего приложения «Сегодняшний вид».Как я могу отменить визуальный эффект Центра уведомлений (iOS) для определенного вида?
override func viewDidLoad() {
applyVibrancy()
}
func applyVibrancy()
{
let oldView = self.view
var effectView = UIVisualEffectView(effect: UIVibrancyEffect.notificationCenterVibrancyEffect())
effectView.frame = oldView.bounds
effectView.autoresizingMask = oldView.autoresizingMask;
effectView.userInteractionEnabled = true
effectView.contentView.addSubview(oldView)
self.view.tintColor = UIColor.clearColor()
self.view = effectView
}
Это успешно применяет этот визуальный эффект ко всему моему виджету. Но я бы хотел, чтобы некоторые из моих вложенных представлений (Ярлыки, Кнопки, Изображения и т. Д.) Были повреждены этим эффектом NOT.
Как я могу это достичь?
Привет, gabbler. Я пытаюсь просто отменить эффект для некоторых видов внутри контейнера представления, который уже применил этот эффект. –
После того как я применен, я не нахожу api, чтобы отменить его, но вы можете изменить структуры представления, пусть у self.view есть два контейнера представления, оба кадра - self.view.bounds, перемещают все подпункты, которые вы хотите отменить эффект, в контейнер A, другие подпункты к контейнеру B, применяют эффект к контейнеру B. – gabbler