我有一个自定义UIButton
,其中我使用CAShapeLayer
绘制一个圆圈。该按钮稍后将与UICollisionBehavior
结合使用,以检测多个UIButtons
之间的冲突。但是,我想UICollisionBehavior会检测按钮的边界框,这是一个正方形。有没有办法让边界框等于绘制的形状?
这是我用来绘制按钮的片段:
let circlePath = UIBezierPath(arcCenter: CGPoint(x: self.diameter! / 2.0, y: self.diameter! / 2.0), radius: (self.diameter! - 10)/2, startAngle: 0.0, endAngle: CGFloat(M_PI * 2.0), clockwise: true)
circleLayer = CAShapeLayer()
circleLayer.path = circlePath.CGPath
circleLayer.fillColor = UIColor.redColor().CGColor
circleLayer.strokeEnd = 1.0
self.layer.addSublayer(circleLayer)