Ich füge eine UIView zur Ansicht eines SKScene hinzu. Später, wenn ich dieses UIView-Formular von seinem Superview entfernen möchte, scheint die Standardmethode von uiview.removeFromSuperview nicht zu funktionieren. Wie sollte ich das stattdessen erreichen? Hier ist, wie ich die UIView hinzufügen:removeFromSuperview funktioniert nicht, wenn UIView zu SKScene hinzugefügt wird
func addContainerView() {
let containerRect = CGRectMake(400, 24, 600, 720)
smallerView = UIView(frame: containerRect)
smallerView.backgroundColor = UIColor.redColor()
self.view.addSubview(smallerView)
}
Hier ist, wie ich es zu entfernen bin versucht:
func removeContainerView() {
smallerView.removeFromSuperview()
}
Dies alles geschieht in der SKScene Klasse, so hier ‚Selbst‘ bezieht sich auf die Szene . Irgendwelche Gedanken?
Sie fügen es tatsächlich zu 'self.view', das ist' SKView' –
Dank @AndreyGordejew, dies ist eine interessante Beobachtung, eine ziemlich wahr, aber ich bin mir nicht sicher, wie es mein Problem betrifft. SKView erbt von UIView, und das Entfernen von Subviews sollte auf die gleiche Weise funktionieren, richtig? – zeeple
Das funktioniert gut für mich. Es muss etwas anderes geben, dass es auf dem Bildschirm bleibt. Ich habe während ViewDidLoad in der SceneKit-Vorlage eine Ansicht hinzugefügt und sie in der Methode handleTap entfernt, und alles funktioniert wie erwartet. – bjtitus