拡張機能のコードを使用すると、次のエラーが表示されます。別の演算子を使用するのか、インターネット検索に基づいて式の値を変更するのかを知りません。
エラー:%は使用できません:代わりに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
が正しい方法です。