Could not cast value of type 'UIView' (0x112484eb0) to 'SKView' (0x111646718). I keep on getting this error. Can anyone help me because the line of code is there by default. I converted the SK game into the latest swift syntax using the xcode 7 beta. The compiler was missing a lot of things, that is why i came back to xcode 6. I have no red errors; but, the game crashes and says thread 1: signal SIGARBT. Any tips on the changes between swift 2 and the latest version of swift 1 that could have caused problems in the conversion to the latest swift syntax. Perhaps something that was converted, that I should change in xcode 6.3.2. I will delete the beta once this crash issue is resolved. There is probably an error in the code, because i got the same error when i copied the code onto a brand new xcode project. Thanks in advance!
let skView = self.view as! SKView
For those who are not wanting to use a
Storyboard
, you can simple create the view as anSKView
in theViewController
'sloadView
function.Go to your Storyboard, select your UIViewController that contains the SpriteKit game, and select the view from left menu:
Now go to Identity Inspector and make sure Class is
SKView
and notUIView
:You should now be able to compile this part of code from your
UIViewController
:Or in Swift:
Simple fix. You just have to change the View in which ever view controller your using from UIView to SKView.
I finally fixed it! Instead of putting the functions in the GameViewController and calling them from game scene, I had to put the functions in gameScene and replace view with self.view!.