您好我正在使用此代码尝试根据时间设置进度条动画。
sfSapply()
但是我得到一个错误,上面写着:无法将double类型的值设置为float类型的值。
编辑:
错误在这一行:
import UIKit
class LoadingScreen: UIViewController {
@IBOutlet var progressView: UIProgressView!
override func viewDidLoad() {
super.viewDidLoad()
var time = 0.0
var timer: NSTimer
timer = NSTimer.scheduledTimerWithTimeInterval(0.1, target: self, selector:Selector("setProgress"), userInfo: nil, repeats: true)
func setProgress() {
time += 0.1
progressView.progress = time / 3
if time >= 3 {
timer.invalidate()
}
}
答案 0 :(得分:7)
除非另有说明,否则swift编译器假定Double的类型推断为0.0 - 声明为
var time : Float = 0.0
参考 - https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/TheBasics.html - 当推断浮点数的类型时,Swift总是选择Double(而不是Float)。