美文网首页
view设置两个圆角之后改变frame的问题

view设置两个圆角之后改变frame的问题

作者: MTSu1e丶 | 来源:发表于2019-01-17 17:40 被阅读0次

    项目中经常会遇到设置一个view两个圆角的问题,代码如下:

        UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:_bgView.bounds byRoundingCorners:UIRectCornerTopLeft | UIRectCornerTopRight cornerRadii:CGSizeMake(13, 13)];
        CAShapeLayer *maskLayer = [[CAShapeLayer alloc] init];
        maskLayer.frame = _bgView.bounds;
        maskLayer.path = maskPath.CGPath;
        _bgView.layer.mask = maskLayer;
    

    代码中是给_bgVIew设置上面的两个角为13的圆角,_bgVIew背景颜色是白色的

    当你设置完这个之后,在次修改_bgView的时候,就会出现问题,比如去加大_bgview的高度,那么就会出现如图所示的问题:

    正常情况:


    1547717699320.jpg

    修改_bgView高度之后,出现异常情况:


    WX20190117-173633@2x.png

    如图所示,设置两个圆角之后,在修改_bgView的高度就会出现,显示错误,蓝色区域

    解决办法:
    修改_bgVIew高度之后,在重新给_bgView设置一次两个圆角

    相关文章

      网友评论

          本文标题:view设置两个圆角之后改变frame的问题

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