У меня есть приложение, которое Im делает, и мне нужно перейти от одного представления приложения приложения к GameScene. Я добавил GameViewController.swift, GameScene.swift и GameScene.sks в свой проект. Как я перейду с моего контроллера просмотра на свой GameScene? Я искал примеры, но ни один из них не помог, любые быстрые решения были бы замечательными.Как перейти от одного взгляда к spritekit
Вот код, который я использую, чтобы перейти к своей игре.
let storyboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let gameView: UINavigationController = storyboard.instantiateViewController(withIdentifier: "miniGame") as! UINavigationController
self.present(gameView, animated: true, completion: nil)
, но я получаю сообщение об ошибке
Could not cast value of type 'UIView' (0x2d73b00) to 'SKView' (0x1ba878c).
(lldb)
он выталкивает ошибку на этой строке кода в моем GameViewController
if let view = self.view as! SKView? {
GameViewController точно так же, как и любой другой контроллер, только что он представляет собой SKView, который в свою очередь отвечает за представление SKScene. Поэтому, если я чего-то не упускаю, просто создайте segue из контроллера представления в GameViewController через раскадровку и выполните функцию выполнения в своем исходном контроллере представления, когда вы хотите показать контроллер игрового представления. –
Обновлено @KenToh – shane
Для тех, кто придет в Swift и SpriteKit без значительного понимания кастингов, типов, представлений, сцен и их различных отношений, точка входа, чтобы получить что-либо для работы между этими двумя мирами (UIKit и SpriteKit), является НОЧНОЙ странности @ElTomato. Я знаю. Вы, вероятно, похожий человек, для которого все это имеет смысл ... но, как кто-то из другой группы, я очень хорошо знаю боль Шейна. – Confused