Я различные CAShapeLayers
, что у каждого есть отличительный цвет, сделал так:Как получить цвет пикселя при касании (Swift)?
shape1.strokeColor = UIColor(red: 85/255.0, green: 176/255.0, blue: 112/255.0, alpha: 1.0).
shape2.strokeColor = UIColor(red: 222/255.0, green: 171/255.0, blue: 66/255.0, alpha: 1.0).CGColor
Использованием touchesBegan
функции, я хочу, чтобы определить, был ли CAShapeLayer
прослушивались, и какая именно один он был, для того, чтобы подходящее действие. Я знаю, что можно использовать hitTest
и CGPathContainsPoint
, но я хочу использовать другой метод. Как сравнить цвет точки, постукиваемой с цветом CAShapeLayers
?
Любая помощь будет оценена
Сначала вы должны выяснить, на котором CAShapeLayer дело, с CGPathContainsPoint, а затем ju проверить цвет этого слоя –
К сожалению, у моих CAShapeLayers все одинаковые пути (так как они все сектора одного круга), а это значит, что CGPathContainsPoint не будет предоставлять уникальный CAShapeLayer. Есть ли другой способ? – John