Ich habe eine Klasse Person, die mehrmals instanziiert wird. Jede Person bekommt ihren eigenen Timer. Nach meiner init
für Person
Ich nenne startTimer()
.
class Person {
var timer = NSTimer()
func startTimer() {
timer = NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: Selector("timerTick"), userInfo: nil, repeats: true)
}
func timerTick() {
angerLevel++
println("Angry! \(angerLevel)")
}
...
...
}
Ich kann also 3 Instanzen von Person in einem Array von haben Person[]
. Ich erhalte eine Fehlermeldung:
2014-06-25 13:57:14.956 ThisProgram[3842:148856] *** NSForwarding: warning: object 0x113760048 of class '_TtC11ThisProgram6Person' does not implement methodSignatureForSelector: -- trouble ahead
Ich habe an anderer Stelle gelesen, dass ich von erben sollte, NSObject
aber dies ist in Swift nicht Obj-C. Die Funktion befindet sich innerhalb der Klasse, daher bin ich mir nicht sicher, was ich tun soll.
class Person : NSObject { ... }
. Suchen Sie eine andere Lösung?