diff --git a/lib/pages/video/detail/reply/widgets/zan.dart b/lib/pages/video/detail/reply/widgets/zan.dart index 28b819e94..13c503ed8 100644 --- a/lib/pages/video/detail/reply/widgets/zan.dart +++ b/lib/pages/video/detail/reply/widgets/zan.dart @@ -1,4 +1,5 @@ import 'package:PiliPalaX/utils/extension.dart'; +import 'package:PiliPalaX/utils/utils.dart'; import 'package:flutter/material.dart'; import 'package:flutter_smart_dialog/flutter_smart_dialog.dart'; import 'package:font_awesome_flutter/font_awesome_flutter.dart'; @@ -134,7 +135,7 @@ class _ZanButtonState extends State { return ScaleTransition(scale: animation, child: child); }, child: Text( - widget.replyItem!.like.toString(), + Utils.numFormat(widget.replyItem!.like), key: ValueKey(widget.replyItem!.like!), style: TextStyle( color: widget.replyItem!.action == 1 ? primary : color, diff --git a/lib/pages/video/detail/reply/widgets/zan_grpc.dart b/lib/pages/video/detail/reply/widgets/zan_grpc.dart index 2a11b13c2..f1ebfbeab 100644 --- a/lib/pages/video/detail/reply/widgets/zan_grpc.dart +++ b/lib/pages/video/detail/reply/widgets/zan_grpc.dart @@ -1,5 +1,6 @@ import 'package:PiliPalaX/grpc/app/main/community/reply/v1/reply.pb.dart'; import 'package:PiliPalaX/utils/extension.dart'; +import 'package:PiliPalaX/utils/utils.dart'; import 'package:flutter/material.dart'; import 'package:flutter_smart_dialog/flutter_smart_dialog.dart'; import 'package:font_awesome_flutter/font_awesome_flutter.dart'; @@ -161,8 +162,7 @@ class _ZanButtonGrpcState extends State { return ScaleTransition(scale: animation, child: child); }, child: Text( - widget.replyItem.like.toString(), - // key: ValueKey(widget.replyItem!.like!), + Utils.numFormat(widget.replyItem.like.toInt()), style: TextStyle( color: widget.replyItem.replyControl.action.toInt() == 1 ? primary diff --git a/lib/pages/video/detail/view.dart b/lib/pages/video/detail/view.dart index 0a92dbe91..1d5c325de 100644 --- a/lib/pages/video/detail/view.dart +++ b/lib/pages/video/detail/view.dart @@ -1236,7 +1236,7 @@ class _VideoDetailPageState extends State if (text == '评论') { return Tab( text: - '评论${_videoReplyController.count.value == -1 ? '' : ' ${_videoReplyController.count.value}'}', + '评论${_videoReplyController.count.value == -1 ? '' : ' ${Utils.numFormat(_videoReplyController.count.value)}'}', ); } else { return Tab(text: text); diff --git a/lib/utils/utils.dart b/lib/utils/utils.dart index db823942e..f52061389 100644 --- a/lib/utils/utils.dart +++ b/lib/utils/utils.dart @@ -482,16 +482,21 @@ class Utils { return number; } } - if (number >= 100000000) { - return '${(number / 100000000).toStringAsFixed(1)}亿'; - } else if (number > 10000) { - double result = number / 10000; + + String format(first, second) { + double result = number / first; String format = result.toStringAsFixed(1); if (format.endsWith('.0')) { - return '${result.toInt()}万'; + return '${result.toInt()}$second'; } else { - return '$format万'; + return '$format$second'; } + } + + if (number >= 100000000) { + return format(100000000, '亿'); + } else if (number >= 10000) { + return format(10000, '万'); } else { return number.toString(); }