291F12A6-B038-4D48-9A26-E650F2BE2D1A.png
上图是我做的一个小demo里面的截图,如图所示,弹出框的背景是现在app大量使用的半透明磨砂效果,那么如果去实现这种效果呢?
// 判断系统版本是否支持 8.0 UIView *blurEffectView; if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0) { // 磨砂效果 UIBlurEffect *blurEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleDark]; // 磨砂视图 blurEffectView = [[UIVisualEffectView alloc] initWithEffect:blurEffect]; } else { // 屏幕截图 - 调用苹果官方框架实现磨砂效果 UIImage *screenShot = [UIImage screenShot].applyLightEffect; blurEffectView = [[UIImageView alloc] initWithImage:screenShot]; } // [self addSubview:blurEffectView]; [self insertSubview:blurEffectView atIndex:0]; [blurEffectView mas_makeConstraints:^(MASConstraintMaker *make) { make.edges.equalTo(self); }];
苹果在8.0之前提供了这种效果的第三方框架,在8.0之后干脆将这个框架封装在api里面,所以兄弟们在使用的时候像我这样做一下判断即可。
判断版本号
[self insertSubview:blurEffectView atIndex:0];插入最下面
ps:另外附上苹果提供的第三方框架给大家。UIImage+ImageEffects下载地址http://download.csdn.net/detail/baitxaps/8893093
文/小小流浪的汉子(简书作者)原文链接:http://www.jianshu.com/p/3a1337867ddd著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
网友评论