programing

UIV 시각 효과 보기를 사용하여 이미지를 흐리게 하는 방법은 무엇을 참조하십시오.

powerit 2023. 5. 28. 21:05
반응형

UIV 시각 효과 보기를 사용하여 이미지를 흐리게 하는 방법은 무엇을 참조하십시오.

누가 이미지에 블러를 적용하는 작은 예를 들어줄 수 있습니까?나는 지금 한동안 코드를 알아내려고 노력하고 있습니다 :( 아직 object에 새로운!

UIVisualEffectView복잡한 시각적 효과에 대한 간단한 추상화를 제공합니다.원하는 효과에 따라 결과는 보기 뒤에 계층화된 내용 또는 보기의 내용 보기에 추가된 내용에 영향을 미칠 수 있습니다.

적용 aUIVisualEffectView기존 뷰에 대해 기존 뷰에 블러 또는 진동 효과를 적용할 수 있습니다.보기 계층에 UIVisualEffectView를 추가한 후의 내용에 하위 보기를 추가합니다.UIVisualEffectView하위 뷰를 직접 추가하지 마십시오.UIVisualEffectView그 자체로

https://developer.apple.com/documentation/uikit/uivisualeffectview #//apple_ref/occ/instp/UIVisual Effect 보기/콘텐츠 보기

이 흐릿한 뷰를 이미지 뷰에 올려놓기만 하면 됩니다.다음은 목표-C의 예입니다.

UIVisualEffect *blurEffect;
blurEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleLight];

UIVisualEffectView *visualEffectView;
visualEffectView = [[UIVisualEffectView alloc] initWithEffect:blurEffect];

visualEffectView.frame = imageView.bounds;
[imageView addSubview:visualEffectView];

스위프트:

var visualEffectView = UIVisualEffectView(effect: UIBlurEffect(style: .Light))    

visualEffectView.frame = imageView.bounds

imageView.addSubview(visualEffectView)

다음은 UIVisual Effect View를 사용하여 UIVisual Effect 및 UI Blur Effect를 사용하는 방법입니다.

목표-C:

// Blur effect
UIBlurEffect *blurEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleDark];
UIVisualEffectView *blurEffectView = [[UIVisualEffectView alloc] initWithEffect:blurEffect];
[blurEffectView setFrame:self.view.bounds];
[self.view addSubview:blurEffectView];

// Vibrancy effect
UIVibrancyEffect *vibrancyEffect = [UIVibrancyEffect effectForBlurEffect:blurEffect];
UIVisualEffectView *vibrancyEffectView = [[UIVisualEffectView alloc] initWithEffect:vibrancyEffect];
[vibrancyEffectView setFrame:self.view.bounds];

// Label for vibrant text
UILabel *vibrantLabel = [[UILabel alloc] init];
[vibrantLabel setText:@"Vibrant"];
[vibrantLabel setFont:[UIFont systemFontOfSize:72.0f]];
[vibrantLabel sizeToFit];
[vibrantLabel setCenter: self.view.center];

// Add label to the vibrancy view
[[vibrancyEffectView contentView] addSubview:vibrantLabel];

// Add the vibrancy view to the blur view
[[blurEffectView contentView] addSubview:vibrancyEffectView];

스위프트:

// Blur Effect
let blurEffect = UIBlurEffect(style: UIBlurEffectStyle.dark)
let blurEffectView = UIVisualEffectView(effect: blurEffect)
blurEffectView.frame = view.bounds
view.addSubview(blurEffectView)

// Vibrancy Effect
let vibrancyEffect = UIVibrancyEffect(blurEffect: blurEffect)
let vibrancyEffectView = UIVisualEffectView(effect: vibrancyEffect)
vibrancyEffectView.frame = view.bounds

// Label for vibrant text
let vibrantLabel = UILabel()
vibrantLabel.text = "Vibrant"
vibrantLabel.font = UIFont.systemFont(ofSize: 72.0)
vibrantLabel.sizeToFit()
vibrantLabel.center = view.center

// Add label to the vibrancy view
vibrancyEffectView.contentView.addSubview(vibrantLabel)

// Add the vibrancy view to the blur view
blurEffectView.contentView.addSubview(vibrancyEffectView)

또한 인터페이스 작성기를 사용하여 간단한 상황에서 이러한 효과를 쉽게 만들 수 있습니다.보기의 z 값은 문서 개요에 나열된 순서에 따라 달라지므로,UIVisualEffectView보기 앞에 있는 문서 윤곽선으로 이동합니다.이렇게 하면 자동으로 중첩됩니다.UIView어느 쪽이contentView주어진 재산UIVisualEffectView이 보기에서 블러 위에 표시할 항목을 중첩합니다.

XCode6 베타5

또한 쉽게 활력을 활용할 수 있습니다.UIVisualEffect자동으로 다른 중첩된 데이터를 생성합니다.UIVisualEffectView기본적으로 활성화된 상태로 문서 개요에 표시됩니다.그런 다음 레이블 또는 텍스트 뷰를 중첩된 영역에 추가할 수 있습니다.UIView(다시 말하지만,contentView의 재산.UIVisualEffectView), "> 슬라이드를 통해 잠금 해제" UI 요소와 동일한 효과를 얻을 수 있습니다.

여기에 이미지 설명 입력

저는 UI 요소를 만들거나 유지하는 데 사용되는 코드가 없는 Storyboard를 통해 시각 효과를 만드는 것을 합니다.그것은 저에게 완전한 경관 지원도 제공합니다.저는 블러와 함께 UIV 시각 효과를 사용하는 것에 대한 간단한 데모를 만들었습니다.

기트허브에 대한 데모

Swift에서 답을 원하는 사람이 있다면 다음과 같습니다.

var blurEffect = UIBlurEffect(style: UIBlurEffectStyle.Dark) // Change .Dark into .Light if you'd like.

var blurView = UIVisualEffectView(effect: blurEffect)

blurView.frame = theImage.bounds // 'theImage' is an image. I think you can apply this to the view too!

업데이트:

현재로서는 IB에서 이용할 수 있기 때문에 코딩할 필요가 없습니다 :)

-(void) addBlurEffectOverImageView:(UIImageView *) _imageView
{
    UIVisualEffect *blurEffect;
    blurEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleDark];

    UIVisualEffectView *visualEffectView;
    visualEffectView = [[UIVisualEffectView alloc] initWithEffect:blurEffect];

    visualEffectView.frame = _imageView.bounds;
    [_imageView addSubview:visualEffectView];
}

언급URL : https://stackoverflow.com/questions/24067719/how-to-use-uivisualeffectview-to-blur-image

반응형