[解決済み] は使用できません。代わりにtruncatingRemainderを使用してください "とはどういう意味ですか?
2022-05-13 20:19:27
質問
拡張機能のコードを使用する際に以下のようなエラーが発生するのですが、インターネット検索で調べても、ただ別の演算子を使えということなのか、式の中の値を修正しろということなのか、よくわかりません。
エラー: % は使用できません。代わりに 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)
}
}
}
minutesとsecondsの変数設定時にエラーが発生しました。
解決方法は?
CMTimeGetSeconds()
は浮動小数点数を返します (
Float64
別名
Double
). Swift 2 では、次のように計算することができました。
として浮動小数点数の除算の余りを計算することができました。
let rem = 2.5 % 1.1
print(rem) // 0.3
Swift 3 では、これは
let rem = 2.5.truncatingRemainder(dividingBy: 1.1)
print(rem) // 0.3
あなたのコードに適用されます。
let totalSeconds = CMTimeGetSeconds(self)
let hours = Int(totalSeconds / 3600)
let minutes = Int((totalSeconds.truncatingRemainder(dividingBy: 3600)) / 60)
let seconds = Int(totalSeconds.truncatingRemainder(dividingBy: 60))
しかし、この特定のケースでは、最初に持続時間を整数に変換する方が簡単です。 を整数に変換する方が簡単です。
let totalSeconds = Int(CMTimeGetSeconds(self)) // Truncate to integer
// Or:
let totalSeconds = lrint(CMTimeGetSeconds(self)) // Round to nearest integer
そして、次の行は単純化して
let hours = totalSeconds / 3600
let minutes = (totalSeconds % 3600) / 60
let seconds = totalSeconds % 60
関連
-
[解決済み】「Fatal error: Unexpectedly found nil while unwrapping an Optional value "とはどういう意味ですか?
-
[解決済み] Swift言語におけるエクスクラメーションマークの意味とは?
-
EXC_BAD_ACCESS (code=2, address=0x0)
-
[解決済み] iOS7でスタイルUITableViewStyleGroupedを持つUITableViewの上部に余分なパディングがあるのはなぜですか?
-
[解決済み] NSの接頭辞はどういう意味ですか?
-
[解決済み] Unwind segueは何に使うのか、どう使うのか?
-
[解決済み] ブロック(__block)」というキーワードはどういう意味ですか?
-
[解決済み] Swift 3でディスパッチキューを作成する方法
-
[解決済み] UITextBorderStyleNoneを使用してUITextFieldのパディングを設定する
-
[解決済み】Objective-Cの"@private "の意味は?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
制御が非ボイド関数の終了に達する
-
iOSコンパイルポッドでエラー CocoaPods could not find compatible versions for pod "XXXXX" が報告される。
-
[解決済み] iOS 8 UITableViewのセパレータインセット0が機能しない件
-
[解決済み] UIButtonのタイトルを左揃えにするにはどうしたらよいですか?
-
[解決済み] iPhone 5の画面解像度に対応したアプリを開発・移行するには?
-
[解決済み] NSOperationとGrand Central Dispatchの比較
-
[解決済み] インポート vs #インポート - iOS 7
-
[解決済み] UIViewの角丸とドロップシャドウ?
-
[解決済み] UITableView - トップにスクロールする
-
[解決済み] ぼかしの入ったオーバーレイビューの作成