現在、BE から750
分 (int) のような数値を取得し、時刻を表す必要があります。
750 分 = 12.5 時間なので、UI には 12:30 が表示されます。
1080 分 = 18 時間なので、UI には 18:00 が表示されます。
しかし、分から時間と分を含む適切なオブジェクトにきれいに変換する方法を見つけることができないようです。
TimeOfDay
結局、私はオブジェクトを持ちたい
私は苦労し続け、自分で答えを見つけたら投稿します:)
上記のコメントの助けを借りて、スティングを分割することで解決しました。Duration Class は決して変更されないことに依存しているため、これを変換する最良の方法とは考えていませんが、次のことを行うことで必要なものが得られました
TimeOfDay minutesToTimeOfDay(int minutes) {
Duration duration = Duration(minutes: minutes);
List<String> parts = duration.toString().split(':');
return TimeOfDay(hour: int.parse(parts[0]), minute: int.parse(parts[1]));
}
Duration
分数で作成すると、toString()
そのインスタンスが出力00:00
され、この文字列がコロン「:」で分割されます。