使用扩展代码时,出现以下错误,我不确定他们是否要求使用其他运算符或基于Internet搜索修改表达式中的值。
错误:%不可用:改用truncatingRemainder
扩展代码:
extension CMTime {
var durationText:String {
let totalSeconds = CMTimeGetSeconds(self)
let hours:Int = Int(totalSeconds / 3600)
let minutes:Int = Int(totalSeconds % 3600 / 60)
let seconds:Int = Int(totalSeconds % 60)
if hours > 0 {
return String(format: "%i:%02i:%02i", hours, minutes, seconds)
} else {
return String(format: "%02i:%02i", minutes, seconds)
}
}
}
设置分钟和秒变量时会发生错误。
%
操作员不可用,您应该考虑使用类似truncatingRemainder
方法的方法。
Float64
,但上Int
只; 因此:let minutes:Int = Int(totalSeconds) % 3600 / 60; let seconds:Int = Int(totalSeconds) % 60
是正确的方法。