2017-02-03 7 views
0

я попробовал этот код на изображение, чтобы размыть его ... используя TViOS 10,1 и Swift 3,0Размытие по изображению

let blurEffect = UIBlurEffect(style: UIBlurEffectStyle.extraLight) 
let blurView = UIVisualEffectView(effect: blurEffect) 
blurView.frame = CGRect(x: 256, y: 128, width: 1024, height: 512) 
self.view.addSubview(blurView) 

С этим результатом ... жаль, что это не пятно ... Я что-то здесь отсутствует?

enter image description here

+2

Возможный дубликат [Как изменить интенсивность UIBlurEffect?] (http://stackoverflow.com/questions/28140781/how-to-edit-the-uiblureffect-in tensity) – UpSampler

+1

попробуйте сыграть с 'blurView.layer.opacity' __ [значение] (https://developer.apple.com/reference/quartzcore/calayer/1410933-opacity) __, я думаю, что это могло бы представить варианты для вы. – holex

+0

Измените EffectStyle на .light. Есть три варианта, и мои эксперименты с непрозрачностью провалились некоторое время назад, и с тех пор нашли тех, кто говорит, что не пытайтесь это сделать. Если вам не нравятся три предложенных варианта, вы всегда можете использовать CoreImage. Довольно простой код - при применении к изображению. Если вам нужен этот код, дайте мне знать. – dfd

ответ

2

Вашего код правильный, по умолчанию вид размытия в прошивке работа, как это. Вам нужно больше размытости, тогда вы должны использовать сторонние рамки.

Я использовал этот код в моем проекте:

@IBOutlet var blurView: UIVisualEffectView! 

override func viewDidLoad() { 
    super.viewDidLoad() 

    let blurEffect = UIBlurEffect(style: .extraDark) 
    self.blurView.effect = blurEffect 
} 

И результат: enter image description here

+0

Пожалуйста, объясните OP * почему * это работает там, где код OP не сделал. Это дает хороший ответ. – dfd

+0

Хорошо, но где размытие? – user3069232

+0

Фон этого снимка экрана является размытым видом. Изображение, показанное на этом скриншоте, используется в качестве фонового изображения и задает размытие над фоновым изображением. Все объекты помещаются поверх размытия. –

1

функ blurEffect() {

let blurEffect = UIBlurEffect(style: UIBlurEffectStyle.dark) 
    let blurEffectView = UIVisualEffectView(effect: blurEffect) 
    blurEffectView.frame = self.blurView.bounds 
    blurEffectView.autoresizingMask = [.flexibleWidth, .flexibleHeight] 
    self.blurView.addSubview(blurEffectView) 

}

+0

создать UIView на imageView с одинаковым размером imageView – raheem

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