diff --git a/assets/images/big-vip.png b/assets/images/big-vip.png deleted file mode 100644 index bb0091546..000000000 Binary files a/assets/images/big-vip.png and /dev/null differ diff --git a/assets/images/big-vip.svg b/assets/images/big-vip.svg new file mode 100644 index 000000000..089eeeae4 --- /dev/null +++ b/assets/images/big-vip.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/lib/common/assets.dart b/lib/common/assets.dart index 898445748..ed429dc80 100644 --- a/lib/common/assets.dart +++ b/lib/common/assets.dart @@ -6,7 +6,7 @@ abstract final class Assets { static const logoIco = 'assets/images/logo/ico/app_icon.ico'; static const logoLarge = 'assets/images/logo/desktop/logo_large.png'; - static const vipIcon = 'assets/images/big-vip.png'; + static const vipIcon = 'assets/images/big-vip.svg'; static const avatarPlaceHolder = 'assets/images/noface.jpeg'; static const loading = 'assets/images/loading.png'; static const buffering = 'assets/images/loading.webp'; diff --git a/lib/common/widgets/pendant_avatar.dart b/lib/common/widgets/pendant_avatar.dart index 9589e381c..5c88faa4f 100644 --- a/lib/common/widgets/pendant_avatar.dart +++ b/lib/common/widgets/pendant_avatar.dart @@ -4,10 +4,10 @@ import 'package:PiliPlus/common/widgets/extra_hittest_stack.dart'; import 'package:PiliPlus/common/widgets/image/network_img_layer.dart'; import 'package:PiliPlus/models/common/avatar_badge_type.dart'; import 'package:PiliPlus/models/common/image_type.dart'; -import 'package:PiliPlus/utils/extension/num_ext.dart'; import 'package:PiliPlus/utils/page_utils.dart'; import 'package:PiliPlus/utils/storage_pref.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_svg/svg.dart'; class PendantAvatar extends StatelessWidget { const PendantAvatar( @@ -142,12 +142,11 @@ class PendantAvatar extends StatelessWidget { Widget _buildBadge(BuildContext context, ColorScheme colorScheme) { final child = switch (badgeType) { - .vip => Image.asset( + .vip => SvgPicture.asset( Assets.vipIcon, width: badgeSize, height: badgeSize, - cacheWidth: badgeSize.cacheSize(context), - semanticLabel: badgeType.desc, + semanticsLabel: badgeType.desc, ), _ => Icon( Icons.offline_bolt, diff --git a/lib/pages/mine/view.dart b/lib/pages/mine/view.dart index 7712abb5c..8f5c92b94 100644 --- a/lib/pages/mine/view.dart +++ b/lib/pages/mine/view.dart @@ -22,6 +22,7 @@ import 'package:PiliPlus/utils/platform_utils.dart'; import 'package:PiliPlus/utils/storage.dart'; import 'package:PiliPlus/utils/utils.dart'; import 'package:flutter/material.dart' hide ListTile; +import 'package:flutter_svg/svg.dart'; import 'package:get/get.dart'; import 'package:material_design_icons_flutter/material_design_icons_flutter.dart'; @@ -274,11 +275,10 @@ class _MediaPageState extends CommonPageState Positioned( right: -1, bottom: -2, - child: Image.asset( + child: SvgPicture.asset( Assets.vipIcon, height: 19, - cacheHeight: 19.cacheSize(context), - semanticLabel: "大会员", + semanticsLabel: "大会员", ), ), ], diff --git a/lib/pages/video/introduction/pgc/widgets/pgc_panel.dart b/lib/pages/video/introduction/pgc/widgets/pgc_panel.dart index 2fec611e3..da1d1d610 100644 --- a/lib/pages/video/introduction/pgc/widgets/pgc_panel.dart +++ b/lib/pages/video/introduction/pgc/widgets/pgc_panel.dart @@ -13,6 +13,7 @@ import 'package:PiliPlus/utils/storage_pref.dart'; import 'package:PiliPlus/utils/utils.dart'; import 'package:flutter/material.dart'; import 'package:flutter_smart_dialog/flutter_smart_dialog.dart'; +import 'package:flutter_svg/svg.dart'; import 'package:get/get.dart'; class PgcPanel extends StatefulWidget { @@ -213,11 +214,10 @@ class _PgcPanelState extends State { if (item.badge?.isNotEmpty == true) ...[ const SizedBox(width: 2), if (item.badge == '会员') - Image.asset( + SvgPicture.asset( Assets.vipIcon, height: 16, - cacheHeight: 16.cacheSize(context), - semanticLabel: "大会员", + semanticsLabel: "大会员", ) else Text(