zoukankan      html  css  js  c++  java
  • iOS 指定位置切圆角不生效,圆角和阴影不能共存问题解决办法

    如果是在VC中操作,需要在viewDidLayoutSubviews方法里

    - (void)viewDidLayoutSubviews
    {
        [super viewDidLayoutSubviews];
        
            CGFloat radius = 36; // 圆角大小
            UIRectCorner corner = UIRectCornerBottomLeft | UIRectCornerBottomRight;
            UIBezierPath * path = [UIBezierPath bezierPathWithRoundedRect:self.backImageV.bounds byRoundingCorners:corner cornerRadii:CGSizeMake(radius, radius)];
            CAShapeLayer *maskLayer = [[CAShapeLayer alloc] init];
            maskLayer.frame = self.backImageV.bounds;
            maskLayer.path = path.CGPath;
            self.backImageV.layer.mask = maskLayer;
        
    }

    或者在其他地方,给一个延时:

    //    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
    //        
    //        CGFloat radius = 36; // 圆角大小
    //        UIRectCorner corner = UIRectCornerBottomLeft | UIRectCornerBottomRight;
    //        UIBezierPath * path = [UIBezierPath bezierPathWithRoundedRect:self.backImageV.bounds byRoundingCorners:corner cornerRadii:CGSizeMake(radius, radius)];
    //        CAShapeLayer *maskLayer = [[CAShapeLayer alloc] init];
    //        maskLayer.frame = self.backImageV.bounds;
    //        maskLayer.path = path.CGPath;
    //        self.backImageV.layer.mask = maskLayer;
    //    
    //        
    //    });

    如果是对同一UILayer 操作,既切圆角又设置阴影。多加一层UIView, 一层设置圆角,一层设置阴影。

    //===========

    //    TODO:圆角与阴影不能共存问题?

    //    在subview上面设置圆角,把subview的masksToBounds属性设置为true

    //    在parent view上面设置阴影,把parent view的masksToBounds属性设置为false,并设置parent view的cornerRadius和subview一样,就可以了。

    //    ————————————————

    //    版权声明:本文为CSDN博主「feosun」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

    //    原文链接:https://blog.csdn.net/feosun/article/details/86657330

    此文仅为鄙人学习笔记之用,朋友你来了,如有不明白或者建议又或者想给我指点一二,请私信我。liuw_flexi@163.com/QQ群:582039935. 我的gitHub: (学习代码都在gitHub) https://github.com/nwgdegitHub/
  • 相关阅读:
    小峰视频十三:二维数组
    小峰视频十二:java数组
    小峰视频十一:循环结构的跳出
    小峰视频十:循环while、for
    小峰视频九:选择语句if、switch
    小峰视频八:逻辑运算符、关系运算符、三门运算符
    小峰视频七:数据类型转换、数据运算
    eggjs+vue实现下载图片 js下载网络图片
    报错/Warning: You should not use <Route component> and <Route children> in the same route; <Route component> will be ignored
    React/事件系统
  • 原文地址:https://www.cnblogs.com/liuw-flexi/p/11806235.html
Copyright © 2011-2022 走看看