let borderline = UIBezIErPath() borderline.movetoPoint(CGPoint(x:0,y: y! - 1)) borderline.addlinetoPoint(CGPoint(x: x!,y: y! - 1)) borderline.linewidth = 2 UIcolor.blackcolor().setstroke() borderline.stroke() let shadowLayer = CAShapeLayer() shadowLayer.shadowOpacity = 1 shadowLayer.shadowOffset = CGSize(wIDth: 0,height: 1) shadowLayer.shadowcolor = UIcolor.redcolor().CGcolor shadowLayer.shadowRadius = 1 shadowLayer.masksToBounds = false shadowLayer.shadowPath = borderline.CGPath self.layer.addSublayer(shadowLayer)
我做错了什么,因为我似乎没有看到任何错误但当然我错了,因为没有阴影出现.函数是drawRect,基本的UIVIEw没有任何额外的东西,x和y是框架的宽度和高度.提前谢谢了!
解决方法 我直接从我的PaintCode应用程序中获取此示例.希望这可以帮助.//// General Declarationslet context = UIGraphicsGetCurrentContext()//// Shadow Declarationslet shadow = UIcolor.blackcolor()let shadowOffset = CGSizeMake(3.1,3.1)let shadowBlurRadius: CGfloat = 5//// BezIEr 2 Drawingvar bezIEr2Path = UIBezIErPath()bezIEr2Path.movetoPoint(CGPointMake(30.5,90.5))bezIEr2Path.addlinetoPoint(CGPointMake(115.5,90.5))CGContextSaveGState(context)CGContextSetShadowWithcolor(context,shadowOffset,shadowBlurRadius,(shadow as UIcolor).CGcolor)UIcolor.blackcolor().setstroke()bezIEr2Path.linewidth = 1bezIEr2Path.stroke()CGContextRestoreGState(context)总结
以上是内存溢出为你收集整理的斯威夫特把阴影画成了一条uibezier路径全部内容,希望文章能够帮你解决斯威夫特把阴影画成了一条uibezier路径所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)