다음은 내가 수행하려고 시도하는 몇 가지 샘플 코드입니다. 다음NSTimer의 UserInfo가 올바른 정보를 전달하지 않음 - Swift
는func firstFunction() {
var timer = NSTimer.scheduledTimerWithTimeInterval(0.6, target: self, selector: Selector("secondFunction:"), userInfo: self.data!.getInfo(), repeats: false);
println("Info: \(timer.userInfo)");
}
func secondFunction(value: Int) {
println("Called with \(value)");
}
출력입니다 : Info: Optional(( 2 ))
지속적으로 너무 변화 ############로 호출
Called with 140552985344960
. self.data!.getInfo
대신 숫자 만 사용하더라도 여전히 출력으로 Info: Optional(2)
이 나오고 호출 된 출력은 계속 변경됩니다. 전달되는 값이 선택 사항이므로 문제가 발생한다고 생각합니다. 문제가있는 경우 선택 사항이되지 않도록하려면 어떻게해야합니까?
다음 secondFunction가 매개 변수로 NSTimer을 가져야한다 : 당신은 당신이 타이머의
userInfo
, 전 내에 저장된 값에 액세스하려는 경우 그래서secondFunction:
해야는 매개 변수로NSTimer
를 지정 타이머의 사용자 정보를 얻으려면 ... –NSDictionary를 사용하여 데이터를 저장하려고 시도했지만 아무런 차이가 없었습니다. userInfo가 단일 매개 변수를 객체로 취할 수 있었던 다른 예제를 보았습니다. – Ricca