I can't seem to be able to get a NSTimer to work in a class that I have created. Every time I run the app, it crashes and says the below:
2015-11-06 19:23:47.108 Project[30546:7771747] *** NSForwarding: warning: object 0x7b025190 of class 'Project.LogoScreen' does not implement methodSignatureForSelector: -- trouble ahead Unrecognized selector -[Project.LogoScreen show] (lldb)
When I use the NSTimers in the GameScene however, I don't get any errors.
Below is the code which I am running which is failing:
// Class #1
import SpriteKit
var background: SKSpriteNode!
class GameScene: SKScene {
override func didMoveToView(view: SKView) {
anchorPoint = CGPointMake(0.5, 0.5)
background = SKSpriteNode(color: UIColor.whiteColor(), size: size)
addChild(background)
LogoScreen().create()
}
}
// Class #2
import Foundation
import SpriteKit
var spriteLogo: SKSpriteNode!
var spriteScreenLogo: SKSpriteNode!
class LogoScreen {
func create() {
spriteScreenLogo = SKSpriteNode(color: UIColor.blackColor(), size: background.size)
spriteScreenLogo.zPosition = 1
background.addChild(spriteScreenLogo)
spriteLogo = SKSpriteNode(imageNamed: "logo")
spriteLogo.alpha = 0
spriteLogo.zPosition = 2
background.addChild(spriteLogo)
NSTimer.scheduledTimerWithTimeInterval(3, target: self, selector: Selector("show"), userInfo: nil, repeats: false)
}
func show() {
print("here")
}
}
make it like this:
@objc func show() {
print("here")
}