您的位置:首页 > 移动开发 > IOS开发

在iOS上绘制阴影

2016-04-07 16:54 344 查看
代码在playground中实现

//: Playground - noun: a place where people can play

import UIKit

class MyView : UIView{
override func drawRect(rect: CGRect) {
//获取绘制上下文
var context = UIGraphicsGetCurrentContext()

//计算要在其中绘制的矩形
var pathRect = CGRectInset(self.bounds, self.bounds.size.width*0.1, self.bounds.size.height*0.1)

//创建一个圆角矩形路径
var rectanglePath = UIBezierPath(roundedRect: pathRect, cornerRadius: 20)

//等价于保存上下文
CGContextSaveGState(context)

//准备阴影
var shadow = UIColor.blackColor().CGColor
var shadowOffset = CGSize(width: 3, height: 3)
var shadowBlurRadius : CGFloat = 5.0

//此函数创建和应用阴影
CGContextSetShadowWithColor(context, shadowOffset, shadowBlurRadius, shadow)

//绘制路径;它将带有一个阴影
UIColor.redColor().setFill()
rectanglePath.fill()

//等价于重载上下文
CGContextRestoreGState(context)
}
}

let viewRect = CGRect(x: 0, y: 0, width: 100, height: 100)
let myEmptyView = MyView(frame:viewRect)
myEmptyView.backgroundColor = UIColor.clearColor()


  效果图

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: