美文网首页
iOS-模糊效果

iOS-模糊效果

作者: 守护地中海的花 | 来源:发表于2019-09-26 07:25 被阅读0次

FXBlurView

- (UIView *)carousel:(iCarousel *)carousel viewForItemAtIndex:(NSInteger)index reusingView:(UIView *)view
{
    if (!view)
    {
        view = [[UIView alloc]initWithFrame:carousel.frame];
        
        UIImageView *bIV = [[UIImageView alloc]initWithFrame:carousel.frame];
        [view addSubview:bIV];
        bIV.contentMode = UIViewContentModeScaleAspectFill;
        bIV.tag = 100;
        
        FXBlurView * cview = [[FXBlurView alloc]initWithFrame:carousel.frame];
        cview.tintColor = [UIColor clearColor];
        cview.blurEnabled = YES;
        cview.blurRadius = 10.0;
        cview.dynamic = NO;
        cview.tag = 101;
        [view addSubview:cview];
        
        UIImageView *tIV = [[UIImageView alloc]initWithFrame:carousel.frame];
        [view addSubview:tIV];
        tIV.contentMode = UIViewContentModeScaleAspectFit;
        tIV.tag = 102;
    }
    UIImageView *bIV = [view viewWithTag:100];
    FXBlurView *cview = [view viewWithTag:101];
    UIImageView *tIV = [view viewWithTag:102];
    [bIV sd_setImageWithURL:self.infoDetailModel.images[index].wppURL];
    [tIV sd_setImageWithURL:self.infoDetailModel.images[index].wppURL];
    return view;
}

blurEnabled:是否开启模糊 默认YES
blurRadius:越大越模糊 默认40 太模糊了 一般设置小点10即可
tintColor:这在一个可选的色调颜色应用于FXBlurView。颜色的RGB分量将混合模糊图像,导致温和的色彩。不同色彩的强度效应,使用光明或黑暗的颜色。对tintColor透明度(alpha)的设置会被忽略。如果您不希望应用色彩,将这个值设置为零或(用户界面颜色clearColor]。请注意,如果您正在使用Xcode 5以上,FXBlurViews接口中创建默认构建器将有一个蓝色的色调
dynamic:必须设置NO 不然太卡了,默认是YES。这个属性控制是否FXBlurView更新动态,或者只有一次当视图添加到它的父视图。默认值为YES。注意,如果动态设置为不,你仍然可以迫使视图更新通过调用setNeedsDisplay或updateAsynchronously:completion:完成。动态模糊极其cpu密集型任务,因此你应该禁用动态视图立即执行一个动画之前,以避免卡顿。然而,如果你有多个FXBlurViews屏幕上那么简单的禁用更新使用setUpdatesDisabled方法而不是设置动态属性。
iterations:没有用到,模糊迭代的数量。更多的迭代改进了但质量降低了性能。默认为2的迭代
updateInterval:没有用到,这个控件之间的时间间隔(以秒为单位)连续更新当FXBlurView在动态模式下操作。这个默认为0,这意味着FXBlurView将尽快更新。这收益最好的帧速率,但也很耗CPU, 这可能导致应用程序的其他性能降低,尤其是在旧设备。要实现这一点,试着增加updateInterval的数值。

  • 如果非常想要fxblurview 可以提前下载好背景图片image对象 赋值完成后 将fxblurView放上去 这样不会卡了
  • 不能这样 也会卡
//[self.bgIV sd_setImageWithURL:detailModel.data.header_background_image.wppURL placeholderImage:[UIImage getPNGimageInBundleWithName:kPlaceHoldRectangle] completed:^(UIImage * _Nullable image, NSError * _Nullable error, SDImageCacheType cacheType, NSURL * _Nullable imageURL) {
        //[self fxblurView];
    //}];

系统方法UIVisualEffectView

UIVisualEffectView *view = [[UIVisualEffectView alloc]initWithEffect:[UIBlurEffect effectWithStyle:UIBlurEffectStyleLight]];
[self.bgIV addSubview:view];
view.frame = CGRectMake(<#CGFloat x#>, <#CGFloat y#>, <#CGFloat width#>, <#CGFloat height#>);
  • UIVisualEffectView是iOS8的新特性,该控件主要用于为原有的控件增加模糊效果。
  • UIVisualEffectView继承自UIView,没有继承UIControl,所以只能做静态控件使用。
  • 控制UIVisualEffectView控件模糊效果的属性时effect只读属性,该属性的类型是UIVisualEffect,该类型有两个子类:UIBlurEffect和UIVibrancyEffect。
  • UIBlurEffect允许应用程序中动态的创建实时的模糊效果;UIVibrancyEffect允许在模糊效果上“写字”。
  • Blur Style有三种效果:
    • UIBlurEffectStyleLight:白色的模糊效果。
    • UIBlurEffectStyleExtraLight:极亮的白色模糊效果。
    • UIBlurEffectStyleDark:暗色的模糊效果。

CoreImage滤镜效果、vlImage、GPUImage

相关文章

  • iOS-模糊效果

    FXBlurView 场景是banner中三张图片 因为图片大小不一致 所以加一个模糊 参考FXBlurView属...

  • iOS-实现高斯模糊效果(swift)

    给UIImage添加分类

  • 模糊效果

    // 首先创建一个模糊效果 let blurEffect =UIBlurEffect(style:...

  • 模糊效果

    //导入第三方库头文件UIImage+ImageEffects //创建模糊对象并指定模糊类型毛玻璃类 UIBlu...

  • iOS-生成颜色图片(纯色,渐变,模糊效果)

    创建一张纯色图片 创建一张渐变色图片 创建一张模糊效果图片

  • iOS-高斯模糊

    前言 昨天看到一位简书作者的博客,写的是swift的版的模糊图,正好我做的项目有这个需求,所以就翻译了一版OC语言...

  • iOS-模糊查询

    前言: 为了巩固FMDB,就来找个简单的Demo学习一下。不好找工作啊,就学习吧,没应聘的消遣吧。 简单介绍:模糊...

  • iOS模糊效果

    iOS 7 以前 使用 CoreImage 使用 GPUImage 使用 vImage iOS 8 及以后 使用U...

  • iOS模糊效果

    实现模糊效果的方式有好几种,这里说明其中两种。 1.毛玻璃 2.高斯模糊,将图片处理成高斯模糊。 值得一提的是,将...

  • UIVisualEffectView 模糊效果

    继承自UIView,因此只是静态控件 -我只想加点空格而已…… 俗称 毛玻璃特效 哈哈其实我感觉这功能有点鸡肋,没...

网友评论

      本文标题:iOS-模糊效果

      本文链接:https://www.haomeiwen.com/subject/mphkuctx.html