Tôi gặp lỗi sau khi sử dụng mã cho tiện ích mở rộng, tôi không chắc liệu họ có yêu cầu chỉ sử dụng một toán tử khác hay sửa đổi các giá trị trong biểu thức dựa trên tìm kiếm trên internet hay không.
Lỗi:% không khả dụng: Sử dụng truncatingRemainder thay thế
Mã phần mở rộng:
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)
}
}
}
(Các) lỗi xảy ra khi thiết lập các biến phút và giây.
%
toán tử không khả dụng và bạn nên xem xét sử dụng một cái gì đó như truncatingRemainder
phương pháp thay thế.
Float64
mà Int
chỉ trên ; do đó: let minutes:Int = Int(totalSeconds) % 3600 / 60; let seconds:Int = Int(totalSeconds) % 60
là cách chính xác.