私は単純な円形のボタンを作成し、このボタンの中に三角形を入れようとしています。これは実際には再生ボタンです。問題は、ボタンに BlurEffect を追加すると、常に上部にあり、三角形が非表示になることです。ぼかし効果の上に三角形を追加する方法はありますか?
import UIKit
@IBDesignable
class CirclePlayButton: UIButton {
let blur = UIBlurEffect(style: .Light)
override func drawRect(rect: CGRect) {
let blurEffect = UIVisualEffectView(effect: blur)
blurEffect.alpha = 0.9
//self.addSubview(blurEffect)
self.insertSubview(blurEffect, atIndex: 0)
let path = UIBezierPath(ovalInRect: rect)
blurEffect.frame = path.bounds
let mask = CAShapeLayer()
mask.path = path.CGPath
blurEffect.layer.mask = mask
let trianglePath = UIBezierPath()
trianglePath.lineWidth = 2
trianglePath.moveToPoint(CGPoint(x: bounds.width*1/4+5, y: bounds.height/4))
trianglePath.addLineToPoint(CGPoint(x: bounds.width*3/4+5, y: bounds.height/2))
trianglePath.addLineToPoint(CGPoint(x: bounds.width*1/4+5, y: bounds.height*3/4))
trianglePath.addLineToPoint(CGPoint(x: bounds.width*1/4+5, y: bounds.height/4))
UIColor.blackColor().setStroke()
trianglePath.stroke()
}
}
前もって感謝します。