可以通過使用UIBezierPath和CAShapeLayer來實(shí)現(xiàn)只對(duì)右下角進(jìn)行圓角處理的效果,具體實(shí)現(xiàn)如下:
let cornerRadius: CGFloat = 10.0
let path = UIBezierPath(roundedRect: view.bounds,
byRoundingCorners: [.bottomRight],
cornerRadii: CGSize(width: cornerRadius, height: cornerRadius))
let mask = CAShapeLayer()
mask.path = path.cgPath
view.layer.mask = mask
這段代碼將向視圖的右下角添加10個(gè)單位的圓角,同時(shí)保留其它角的直角。其中,UIBezierPath的roundedRect:byRoundingCorners:cornerRadii:方法用于創(chuàng)建一個(gè)圓角矩形路徑,CAShapeLayer的path屬性用于設(shè)置視圖的遮罩層路徑,最后將CAShapeLayer對(duì)象賦值給視圖的layer.mask屬性,即可實(shí)現(xiàn)只對(duì)右下角進(jìn)行圓角處理的效果。