2015-11-06 88 views
0

我似乎無法獲得NSTimer在我創建的類中工作。我每次運行應用程序,它崩潰並說以下:NSTimer不工作在不是GameScene的類

2015年11月6日19:23:47.108項目[30546:7771747 *** NSForwarding:警告:類對象0x7b025190「項目。當我使用NSTimers在GameScene但是,我沒有得到任何錯誤[Project.LogoScreen秀] (LLDB)

- 麻煩了 無法識別的選擇 - :LOGOSCREEN」不實現methodSignatureForSelector。

下面是我運行的錯誤的代碼:

// 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") 

      } 

     } 

回答

1

使它像這樣:

 @objc func show() { 

      print("here") 

     } 
+0

謝謝,這個偉大的工程!一旦它讓我(6分鐘),我會標記你的答案是正確的, – Jarron