iOS 遮罩(mask)效果
2016-07-09 23:49
1246 查看
如果把视图裁剪圆形,我们通常会使用给一个视图加圆角的方法。
但如果需求是裁剪某一部分,如图所示
裁剪成如下的样子:
这样,上面的方法就不奏效了。
这个时候使用layer的mask的属性,能够简单的解决这个问题。
代码如下:
创建maskView
创建 circleLayer
巧妙的使用mask还可以实现更多效果。以后慢慢探索。
view.layer.masksToBounds = YES; view.layer.cornerRadius = view.frame.size.width/2;
但如果需求是裁剪某一部分,如图所示
裁剪成如下的样子:
这样,上面的方法就不奏效了。
这个时候使用layer的mask的属性,能够简单的解决这个问题。
代码如下:
创建maskView
maskView = [[UIView alloc]init]; maskView.backgroundColor = [UIColor clearColor]; maskView.frame = CGRectMake(0, 0, 275, 155); [imageView addSubview:maskView];
创建 circleLayer
CAShapeLayer *circleLayer = [CAShapeLayer layer]; CGPoint fCirclrCenter = CGPointMake(maskView.center.x+15, maskView.center.y); circleLayer.path = ([UIBezierPath bezierPathWithArcCenter:fCirclrCenter radius:70 startAngle:0 endAngle:2*M_PI clockwise:YES]).CGPath; [maskView.layer addSublayer:circleLayer]; maskView.superview.layer.mask = circleLayer;
巧妙的使用mask还可以实现更多效果。以后慢慢探索。
相关文章推荐
- jquery实现图片灯箱明暗的遮罩效果
- jQuery实现按钮点击遮罩加载及处理完后恢复的效果
- 分享两款带遮罩的jQuery弹出框
- jQuery实现点击弹出背景变暗遮罩效果实例代码
- js制作带有遮罩弹出层实现登录注册表单特效代码分享
- 使用ImageMagick进行图片缩放、合成与裁剪(js+python)
- js实现登陆遮罩效果的方法
- Android开发从相机或相册获取图片裁剪
- PHP图像裁剪缩略裁切类源码及使用方法
- PHP 使用 Imagick 裁切/生成缩略图/添加水印自动检测和处理 GIF
- jQuery插件jcrop+Fileapi完美实现图片上传+裁剪+预览的代码分享
- JS实现新浪微博效果带遮罩层的弹出框代码
- ASP固定比例裁剪缩略图的方法
- PHP实现图片不变型裁剪及图片按比例裁剪的方法
- 使用CSS+JavaScript或纯js实现半透明遮罩效果的实例分享
- 360浏览器文本框获得焦点后被android软键盘遮罩该怎么办
- Android实现从本地图库/相机拍照后裁剪图片并设置头像
- 解决Android从相册中获取图片出错图片却无法裁剪问题的方法
- Android拍照裁剪图片
- C++获取本机MAC,IP,MASK地址的方法