jestem zmaga się z następujący fragment kodu:Jak korzystać z Selektora Swift? Selector stale Wyników na `Type ma member`
backgroundTimer = NSTimer.scheduledTimerWithTimeInterval(3, target: gvc, selector: #selector(GameViewController.addNext), userInfo: nil, repeats: true)
I nie może wydawać się uzyskać #selector pracy. Ten kod powoduje do:
Type 'GameViewController' has no member 'addNext'
Choć członkiem jest tam ... Oto pełny kod:
class GameViewController: GAITrackedViewController, AVAudioPlayerDelegate {
var sceneCanvas: SKSpriteNode?
override func viewDidLoad() {
skView.presentScene(WelcomeScene(size: view.bounds.size, gvc: self))
}
func createBackground(boundsSize: CGRect, gvc: GameViewController) -> SKSpriteNode {
addUILabels(gvc)
return sceneCanvas!
}
func addUILabels(gvc: GameViewController) {
backgroundTimer = NSTimer.scheduledTimerWithTimeInterval(3, target: gvc, selector: #selector(GameViewController.addNext), userInfo: nil, repeats: true)
}
public func addNext() {
let backgroundLabel = SKSpriteNode(imageNamed: "label1.png")
sceneCanvas!.addChild(backgroundLabel!)
backgroundLabel?.runAction(SKAction.moveByX(-screenSize.width , y: 0, duration: 12))
}
}
class WelcomeScene: SKScene {
init(size: CGSize, gvc: GameViewController){
super.init()
let bounds = CGRect(origin: CGPoint(x: 0,y: 0), size: size)
sceneCanvas = createBackground(bounds, gvc: gvc)
self.addChild(sceneCanvas!)
}
}
Po prostu spróbuj #selector (addNext). – gagarwal
Wypróbuj: #selector (GameViewController.addNext (_ :)) –
@Muhammad Yawar Ali #selector (GameViewController.addNext (_ :)) wyniki do ''GameViewController' nie ma członka 'addNext' – user594883