zoukankan      html  css  js  c++  java
  • mask layer的遮罩层

    1. layer层 mask 遮罩效果

     //渐变层
        CAGradientLayer *gradientLayer = [CAGradientLayer layer];
        gradientLayer.frame = CGRectMake(0, 100, kWidth, kWidth);
        gradientLayer.colors = @[(__bridge id)[[UIColor redColor]colorWithAlphaComponent:0.4] .CGColor,
                                 (__bridge id)[UIColor clearColor].CGColor];
        gradientLayer.startPoint = CGPointMake(0, 0);
        gradientLayer.endPoint  = CGPointMake(1, 0);
        
        [self.view.layer addSublayer:gradientLayer];
        
        
        //
        UIBezierPath *path = [UIBezierPath bezierPathWithOvalInRect:CGRectMake(0, 0, 200, 200)];
        CAShapeLayer *layer = [CAShapeLayer layer];
        layer.frame = self.view.bounds;
        layer.lineWidth = 5;
        layer.strokeColor = [UIColor redColor].CGColor;
        layer.fillColor = [UIColor redColor].CGColor;
        layer.path = path.CGPath;
        layer.lineCap = @"round";
    //    [gradientLayer addSublayer:layer];
        
        gradientLayer.mask = layer;
        

    2. maskView 实现局部透明效果

    //0.相当于maskView 将自己"投影"到 view上, 注意层级关系, 实际并不是在'灰色'的view上滑动, 而是投影到了"灰色"的view上了

    //1.设置了遮罩mask属性后, 只显示重叠部分

    //2.可以通过改变遮罩的alpha和颜色实现透明、半透明的效果

       UIImageView *imageView1 = [[UIImageView alloc]initWithFrame:self.view.bounds];
        imageView1.image = [UIImage imageNamed:@"1"];
        [self.view addSubview:imageView1];
        
        TestView *view = [TestView new];
        view.frame = self.view.bounds;
        view.backgroundColor = [[UIColor lightGrayColor] colorWithAlphaComponent:0.9];
        [self.view addSubview:view];
     
        
        
        UIImageView *imageView = [[UIImageView alloc]initWithFrame:self.view.bounds];
        imageView.image = [UIImage imageNamed:@"1"];
        [self.view addSubview:imageView];
        
        
        UIView *roundView = [[UIView alloc]initWithFrame: CGRectMake(50, 50, 100, 100)];
        roundView.backgroundColor = [UIColor redColor];
        _viewwww = roundView;
        imageView.maskView = roundView;
  • 相关阅读:
    Linux pytorch安装 cuda,torch,torchvision版本选择
    R 语言 缺失值处理并使用SMOTE处理不平衡数据集
    Unable to fit model using “lrm.fit” in R
    Linux系统安装软件(搜狗拼音,teamviewer等)
    win10+anaconda3+pytorch安装
    支持向量机理论+R语言实现
    算法学习:给定一个序列求最大子序列的和
    13 HTTP传输大文件的方法
    12 HTTP的实体数据
    11 HTTP的特点,优点和缺点
  • 原文地址:https://www.cnblogs.com/daxueshan/p/9379457.html
Copyright © 2011-2022 走看看