presentation()
просто возвращает копию layer
, как она представлена на экране.
Попробуйте это так:
if let screenshot = animatedView.layer.presentation() {
let modelLayer = CALayer(layer: screenshot)
self.view.layer.addSublayer(modelLayer)
}
Вы также можете убедиться, что layer
выложен первым, прежде чем позвонить presentation()
animatedView.layer.setNeedsLayout()
РЕДАКТИРОВАТЬ: Моя ошибка - я думаю, копия не может быть добавлена в качестве подслоя. Отредактированный код выше включает правильную реализацию CALayer из копии презентации.