Может ли кто-нибудь привести небольшой пример применения размытия к изображению? Я уже некоторое время пытаюсь выяснить код :( все еще нов в obj c!
UIVisualEffectView
Обеспечивает простую абстракцию сложных визуальных эффектов. В зависимости от желаемого эффекта результаты могут влиять на контент, размещенный за представлением, или контент, добавленный в представление контента.Применить a
UIVisualEffectView
к существующему виду, чтобы применить эффект размытия или вибрации к выходящему виду. После добавления UIVisualEffectView в иерархию представлений добавьте любые подпредставления в contentView объектаUIVisualEffectView
. Не добавляйте подпредставления непосредственно кUIVisualEffectView
себе.
UIVisualEffectView
«scontentView
github.com/onmyway133/blog/issues/124Ответы:
Просто поместите этот размытый вид на imageView. Вот пример в Objective-C:
и Свифт:
источник
Вот как использовать UIVibrancyEffect и UIBlurEffect с UIVisualEffectView
Objective-C:
Свифт 4:
источник
extension UILabel { override func tintColorDidChange() { textColor = tintColor; super.tintColorDidChange() } }
removeFromSuperView
сделать[self.visualEffectView setHidden:NO];
? Выделение и добавление в представление является более дорогой операцией, чем скрытие или отображение.Вы также можете использовать конструктор интерфейса, чтобы легко создавать эти эффекты для простых ситуаций. Поскольку значения z видов будут зависеть от порядка, в котором они перечислены в структуре документа, вы можете перетащить его
UIVisualEffectView
на контур документа, прежде чем вид, который вы хотите размыть. Это автоматически создает вложенныйUIView
, который являетсяcontentView
свойством данногоUIVisualEffectView
. Вложите в это представление вещи, которые вы хотите отобразить поверх размытия.Вы также можете легко воспользоваться преимуществами вибрации
UIVisualEffect
, которые автоматически создадут еще один вложенный элементUIVisualEffectView
в структуре документа с включенной по умолчанию вибрацией. Затем вы можете добавить метку или текстовое представление к вложенномуUIView
(опять же,contentView
свойствоUIVisualEffectView
), чтобы добиться того же эффекта, что и элемент пользовательского интерфейса «> slide to unlock».источник
Я предпочитаю создавать визуальные эффекты через раскадровку - никакой код не используется для создания или поддержки элементов пользовательского интерфейса. Это также дает мне полную поддержку ландшафта. Я сделал небольшую демонстрацию использования UIVisualEffects с Blur, а также Vibrancy.
Демо на Github
источник
Если кто-то хотел бы получить ответ в Swift:
Обновить :
На данный момент он доступен под IB, поэтому вам не нужно ничего кодировать для него :)
источник
источник
Это используется для размытия фона, светлого или темного, чтобы текст можно было наложить более легко. При желании вы можете включить вибрацию, при которой текст будет отображаться в ярком контрастном цвете вместе с размытием.
источник