我读到了这个错误,我知道当编译器不知道它需要返回什么类型时它会发出警报,但是这个错误没有出现在前面,我不知道为什么它会出现在今天。
这是我的代码:
func animateCounter(from: Int, to: Int) {
timer = NSTimer.scheduledTimerWithTimeInterval(duration, target: self, selector: "increaseCounter", userInfo: ["from": from, "to": to], repeats: false)
}
func increaseCounter() {
let from = timer.userInfo!["from"] as! Int
let to = timer.userInfo!["to"] as! Int
}
我设置我的from
和to
变量是整数,为什么我会收到此错误?
答案 0 :(得分:0)
首先将userInfo转换为Optional([String:AnyObject])
,然后将userInfo["from"], userInfo["to"]
转换为Optional(Int)
你需要自己解开结果:)
func increaseCounter() {
let userInfo = timer.userInfo as? [String: AnyObject]
if let dict = userInfo {
let from = dict["from"] as? Int
let to = dict["to"] as? Int
}
}