美文网首页
iOS-mask遮罩

iOS-mask遮罩

作者: linbj | 来源:发表于2017-06-22 15:17 被阅读974次
heart.png

利用一张黑底透明的图片作为CALayer的mask,可以绘制出相同形状不同颜色的图形。

#import "ICEView.h"
@interface ICEView()
@property (nonatomic, strong) UIButton *btn;
@property (nonatomic, strong) CALayer *iceLayer;
@property (nonatomic, strong) CAKeyframeAnimation *frameAnimate;

@property (nonatomic, assign) BOOL isSelected;
@end

@implementation ICEView

- (instancetype)initWithFrame:(CGRect)frame
{
    self = [super initWithFrame:frame];
    if (self) {
        [self creatBaseView];
        _isSelected = NO;
    }
    return self;
}

- (void)creatBaseView {
    _btn = [[UIButton alloc]initWithFrame:self.bounds];
    [self addSubview:_btn];
    
    _iceLayer = [CALayer layer];
    _iceLayer.frame = self.bounds;
    [_btn.layer addSublayer:_iceLayer];
    _iceLayer.mask = [CALayer layer];
}

- (void)layoutSubviews {
    _iceLayer.frame = _btn.bounds;

    _iceLayer.mask.frame = self.bounds;
    
    _iceLayer.backgroundColor = [UIColor lightGrayColor].CGColor;

    _iceLayer.mask.contents = (__bridge id _Nullable)([UIImage imageNamed:@"heart"].CGImage);
}
IMG_1170.PNG

相关文章

  • iOS-mask遮罩

    利用一张黑底透明的图片作为CALayer的mask,可以绘制出相同形状不同颜色的图形。

  • 遮罩

    遮罩 其它遮罩

  • Pr19-Premiere特效滤镜:键控-轨道遮罩

    效果-键控-轨道遮罩键:上图形,下背景 文字层在上方:遮罩层 背景层在下方:被遮罩层 给被遮罩层添加“轨道遮罩键”...

  • Axure实现遮罩效果

    很多时候我们在编辑视频的时候经常需要用到遮罩的效果,一般制作遮罩动画,就是指一个遮罩层同时遮罩多个被遮罩层的遮罩动...

  • 【工具教程集】ZBrush中的实时遮罩

    在ZBrush中有许多遮罩类型,包括柔滑遮罩、反转遮罩,实时遮罩等。其中,实时遮罩又包含很多种类,它不同于一般的遮...

  • Swift 添加两种遮罩的方式

    没有遮罩前的效果 代码实现 遮罩方式一 代码实现 遮罩方式二 代码实现 实战 -- 二维码扫描区域遮罩 代码实现 ...

  • UI跟随鼠标移动

    遮罩面板 遮罩面板的重写 点击传递事件

  • cocos2dx遮罩

    遮罩是很多地方都能用到的东西,新手教程,截图等等,都能用遮罩来实现。 遮罩的原理知其然,知其所以然。遮罩其实可以理...

  • 放大镜效果

    核心原理1、鼠标经过遮罩层显示,离开隐藏;2、移动鼠标遮罩层跟随,鼠标超出大盒子后遮罩层不跟随出框;3、移动遮罩层...

  • 遮罩层实现

    代码如下 实现效果:点击按钮,显示遮罩层,弹出弹框点击遮罩层,隐藏遮罩层,隐藏弹框

网友评论

      本文标题:iOS-mask遮罩

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