我有以下函式,在ListBody我映射串列值的地方,我有一個回傳時間的時間引數。這包含不必要的數字,我想格式化它。
在其他正常List情況下,我使用該功能
var timeFormat = DateFormat("HH:mm");
String timetest = timeFormat.format(my_data);
如何實作上面的函式來格式化下面的 RichText 中的時間,我從地圖中將資料輸入到 TextSpan 中,并且不能將其構建為var外部然后呼叫它?
var mappedValues = ListBody(
children: [...mappedList.map((m) => RichText (
text: TextSpan(
children: <TextSpan> [
TextSpan(text: m.time!.toLocal().toString(), style: TextStyle(
fontSize: 18 ,
fontWeight: FontWeight.w400,
color: Color(0xff2F2F2F),
fontFamily: 'DMSans'
)
),
]
)))]);
謝謝
更新
初始輸出示例
2022-03-05 23:24:00.000
我的功能將它變成
23:24
uj5u.com熱心網友回復:
然后,您應該能夠在此小部件中創建一個方法,該方法將Datetime (m.time) 作為輸入并回傳格式化的時間,如下所示:
String getFormattedTime(DateTime time) {
var timeFormat = DateFormat("HH:mm");
String timePortion = timeFormat.format(time);
return timePortion;
}
然后在你的小部件中呼叫它:
TextSpan(text: getFormattedTime(m.time!))
您還可以將此方法移動到一個通用實用程式類中,以便您可以在整個應用程式中重用它。讓我知道這是否是您正在尋找的并適合您的目的。
查看我創建的這個
讓我知道這是否清楚。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/439627.html
