Целью является подкласс SCNNode. Согласно class docs, init(geometry geometry: SCNGeometry?)
является назначенным инициализатором (нет ключевого слова convenience
), так же как этот код не вызывает назначенный инициализатор своего суперкласса?Swift: «Должен вызывать назначенный инициализатор суперкласса», даже если код делает это
Почему Xcode показывает следующую ошибку?
Должен назвать назначенный инициализатору суперкласс SCNNode
class PreviewNode: SCNNode {
// Constants
let PreviewNodeColor = gRedColor
let Size = CGFloat(1.0)
let ChamferRadius = CGFloat(0.0)
override init() {
let previewBox = SCNBox(width: Size, height: Size, length: Size, chamferRadius: ChamferRadius)
previewBox.firstMaterial!.diffuse.contents = PreviewNodeColor
previewBox.firstMaterial!.transparency = 0.2
previewBox.firstMaterial!.specular.contents = UIColor.whiteColor()
super.init(geometry: previewBox)
}
}
@LeoDabus привет, вы могли бы разместить сообщение в качестве ответа, а также объяснить, почему возникает ошибка, даже если он вызывает назначенный инициализатор? благодаря! – Crashalot
@LeoDabus должен добавить, что мы пробовали ваш подход раньше, и он работает, но вы хотите понять, почему возникает ошибка. – Crashalot
Почему голос? – Crashalot