ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

CALayer 绘制边框线不能被遮挡

2019-11-21 11:00:59  阅读:342  来源: 互联网

标签:mas bgView 遮挡 self top equalTo CALayer 边框线 make


一般我们在布局视图时遵从一个原则: 后加的先显示。

下面简述下我遇到的问题:图片未能盖住背景视图的边框,边框使用的是CALayer绘制,但其余部分都能遮盖住,难道CALayer不能被遮挡?

 

 

实现代码如下:

self.bgView = [[UIView alloc]init];
    self.bgView.layer.cornerRadius = 5.0;
    [self.bgView borderWidth:1 andBorderColor:CC_ICOME(@"#B8D2FF6B")];
    self.bgView.backgroundColor = CC_ICOME(@"F8FBFF8F");
    [self.contentView addSubview:self.bgView];
    [self.bgView mas_makeConstraints:^(MASConstraintMaker *make) {
        make.top.equalTo(self.contentView.mas_top);
        make.left.equalTo(self.contentView.mas_left).offset(10);
        make.right.equalTo(self.contentView.mas_right).offset(-10);
        make.bottom.equalTo(self.moreImage.mas_top);
    }];
    
    
    [self.bgView addSubview:self.leftImage];
    [self.leftImage mas_makeConstraints:^(MASConstraintMaker *make) {
        make.left.equalTo(self.bgView).offset(-2);
        make.top.equalTo(self.bgView.mas_top).offset(9);
        make.height.mas_equalTo(22);
        make.width.mas_equalTo(6);
    }];

先看修改后效果:线被完美遮当

 

实现代码如下:

self.bgView = [[UIView alloc]init];
    self.bgView.layer.cornerRadius = 5.0;
    [self.bgView borderWidth:1 andBorderColor:CC_ICOME(@"#B8D2FF6B")];
    self.bgView.backgroundColor = CC_ICOME(@"F8FBFF8F");
    [self.contentView addSubview:self.bgView];
    [self.bgView mas_makeConstraints:^(MASConstraintMaker *make) {
        make.top.equalTo(self.contentView.mas_top);
        make.left.equalTo(self.contentView.mas_left).offset(10);
        make.right.equalTo(self.contentView.mas_right).offset(-10);
        make.bottom.equalTo(self.moreImage.mas_top);
    }];
    
    
    [self.contentView addSubview:self.leftImage];
    [self.leftImage mas_makeConstraints:^(MASConstraintMaker *make) {
        make.left.equalTo(self.bgView).offset(-2);
        make.top.equalTo(self.bgView.mas_top).offset(9);
        make.height.mas_equalTo(22);
        make.width.mas_equalTo(6);
    }];

 

综上所述:后加的先显示,针对CALayer来说,必须是在同一个等级

 

标签:mas,bgView,遮挡,self,top,equalTo,CALayer,边框线,make
来源: https://www.cnblogs.com/lijianyi/p/11904236.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有