我正在尝试创建一个带阴影的半圈UIView。
我做的是:
使用view.layer.shadow属性
为其添加阴影circleView.backgroundColor = UIColor.whiteColor();
circleView.layer.cornerRadius = baseRoundView.bounds.height/2 ;
circleView.layer.shadowColor = UIColor.blackColor().CGColor;
circleView.layer.shadowOffset = CGSize(width: 0, height: -3);
circleView.layer.shadowOpacity = 0.1;
circleView.layer.shadowRadius = 1;
但是那些步骤只让我得到了一个带阴影的完整圆形视角。
所以我试图掩盖下半部分
var maskRect: CGRect = CGRect(x: 0, y: 0), width: self.circleView.bounds.width, height: self.circleView.bounds.height/2);
var path = CGPathCreateWithRect(maskRect, nil);
maskLayer.path = path;
circleView.layer.mask = maskLayer;
这些步骤效果很好,除了我丢失了顶部阴影
我希望拥有什么
有什么想法吗?
答案 0 :(得分:0)
作为Larme pointed out in the comment ,我所要做的就是调整maskLayer的Y位置来覆盖阴影。
var maskRect: CGRect = CGRect(x: 0, y: -3), width: self.circleView.bounds.width, height: self.circleView.bounds.height/2 + 3 );