docs(theme): update documentation and clean up deprecated color scheme definitions
Removed outdated compatibility aliases and deprecated methods from AppColorScheme, and updated CLAUDE.md to reflect new theme system requirements with centralized color management and no hard-coded values in UI components.
This commit is contained in:
@@ -419,81 +419,21 @@ class AppColorScheme {
|
||||
);
|
||||
|
||||
// ============================================
|
||||
// 兼容性别名(替代 theme/app_colors.dart)
|
||||
// 映射旧名到新系统,避免 breaking change
|
||||
// 兼容性别名 - 仅保留有外部引用的
|
||||
// (buyButtonFill, sellButtonFill, darkCtaGradient, lightCtaGradient,
|
||||
// buyGradient, sellGradient 已在上方定义,此处无需重复)
|
||||
// ============================================
|
||||
|
||||
// 背景色
|
||||
static const Color background = darkBackground;
|
||||
static const Color cardBackground = darkSurfaceContainer;
|
||||
static const Color inputBackground = darkSurfaceContainerHigh;
|
||||
static const Color scaffoldBackground = darkBackground;
|
||||
static const Color modalBackground = darkSurfaceContainerHigh;
|
||||
static const Color hoverBackground = darkSurfaceBright;
|
||||
/// 获取买入按钮渐变(主题感知)- 用于盈利展示
|
||||
|
||||
// 文字色
|
||||
static const Color textPrimary = darkOnSurface;
|
||||
static const Color textSecondary = darkOnSurfaceVariant;
|
||||
static const Color textHint = darkOnSurfaceMuted;
|
||||
static const Color textDisabled = darkInverseSurface;
|
||||
static const Color textLink = darkPrimary;
|
||||
|
||||
// 边框色
|
||||
static const Color border = darkOutlineVariant;
|
||||
static const Color divider = darkSurfaceContainer;
|
||||
static const Color inputBorder = darkOnSurfaceMuted;
|
||||
static const Color inputFocusBorder = darkPrimary;
|
||||
static const Color focusBorder = darkPrimary;
|
||||
|
||||
// 交易类型色
|
||||
static const Color deposit = up;
|
||||
static const Color withdraw = warning;
|
||||
static const Color trade = info;
|
||||
|
||||
// 旧渐变
|
||||
static const List<Color> gradientColors = [darkPrimary, darkPrimaryContainer];
|
||||
static const LinearGradient primaryGradient = LinearGradient(
|
||||
colors: [darkPrimary, darkPrimaryContainer],
|
||||
begin: Alignment.topLeft,
|
||||
end: Alignment.bottomRight,
|
||||
);
|
||||
}
|
||||
|
||||
/// 创建 Shadcn 深色主题
|
||||
ShadThemeData createDarkShadTheme() {
|
||||
return ShadThemeData(
|
||||
brightness: Brightness.dark,
|
||||
colorScheme: AppColorScheme.darkShad,
|
||||
);
|
||||
}
|
||||
|
||||
/// 创建 Shadcn 浅色主题
|
||||
ShadThemeData createLightShadTheme() {
|
||||
return ShadThemeData(
|
||||
brightness: Brightness.light,
|
||||
colorScheme: AppColorScheme.lightShad,
|
||||
);
|
||||
}
|
||||
|
||||
/// 获取涨跌颜色(明暗通用)- 已废弃,请使用带主题感知的版本
|
||||
@Deprecated('Use AppColorScheme.getUpColor(isDark) instead')
|
||||
/// 获取涨跌颜色(明暗通用)
|
||||
Color getChangeColor(bool isUp) => isUp ? AppColorScheme.up : AppColorScheme.down;
|
||||
|
||||
/// 获取涨跌背景色(带透明度)- 已废弃,请使用带主题感知的版本
|
||||
@Deprecated('Use AppColorScheme.getUpBackgroundColor(isDark, opacity: opacity) instead')
|
||||
/// 获取涨跌背景色(带透明度)
|
||||
Color getChangeBackgroundColor(bool isUp, {double opacity = 0.15}) {
|
||||
return isUp
|
||||
? AppColorScheme.up.withValues(alpha: opacity)
|
||||
: AppColorScheme.down.withValues(alpha: opacity);
|
||||
}
|
||||
|
||||
/// 获取涨跌颜色(主题感知)
|
||||
Color getChangeColorThemeAware(bool isUp, bool isDark) =>
|
||||
isUp ? AppColorScheme.getUpColor(isDark) : AppColorScheme.down;
|
||||
|
||||
/// 获取涨跌背景色(主题感知)
|
||||
Color getChangeBackgroundColorThemeAware(bool isUp, bool isDark, {double opacity = 0.15}) {
|
||||
return isUp
|
||||
? AppColorScheme.getUpBackgroundColor(isDark, opacity: opacity)
|
||||
: AppColorScheme.down.withValues(alpha: opacity);
|
||||
}
|
||||
|
||||
|
||||
@@ -81,17 +81,17 @@ class AppRadius {
|
||||
// 基础圆角 (Base Radius)
|
||||
// ============================================
|
||||
|
||||
/// 小圆角 - 4px (标签、小组件)
|
||||
static const double sm = 4.0;
|
||||
/// 小圆角 - 6px (标签、徽章) — 对齐 Pencil $radius-sm
|
||||
static const double sm = 6.0;
|
||||
|
||||
/// 中圆角 - 8px (输入框)
|
||||
static const double md = 8.0;
|
||||
/// 中圆角 - 10px (输入框、标签页) — 对齐 Pencil $radius-md
|
||||
static const double md = 10.0;
|
||||
|
||||
/// 大圆角 - 12px (卡片 - 旧版)
|
||||
static const double lg = 12.0;
|
||||
/// 大圆角 - 14px (卡片、按钮、列表) — 对齐 Pencil $radius-lg
|
||||
static const double lg = 14.0;
|
||||
|
||||
/// 特大圆角 - 16px (大卡片)
|
||||
static const double xl = 16.0;
|
||||
/// 特大圆角 - 20px (大卡片、弹窗) — 对齐 Pencil $radius-xl
|
||||
static const double xl = 20.0;
|
||||
|
||||
/// 超大圆角 - 24px (按钮、模态框、底部抽屉)
|
||||
static const double xxl = 24.0;
|
||||
|
||||
@@ -1,171 +0,0 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'app_color_scheme.dart';
|
||||
|
||||
/// 文字样式系统
|
||||
///
|
||||
/// 统一管理所有文字样式,确保一致性
|
||||
/// 所有样式默认使用 textPrimary 颜色,保证对比度
|
||||
class AppTextStyles {
|
||||
AppTextStyles._();
|
||||
|
||||
// ============================================
|
||||
// 标题样式 (Headings)
|
||||
// ============================================
|
||||
|
||||
/// H1 - 页面大标题
|
||||
static const TextStyle h1 = TextStyle(
|
||||
fontSize: 22,
|
||||
fontWeight: FontWeight.bold,
|
||||
color: AppColorScheme.textPrimary,
|
||||
height: 1.3,
|
||||
);
|
||||
|
||||
/// H2 - 区块标题
|
||||
static const TextStyle h2 = TextStyle(
|
||||
fontSize: 18,
|
||||
fontWeight: FontWeight.bold,
|
||||
color: AppColorScheme.textPrimary,
|
||||
height: 1.3,
|
||||
);
|
||||
|
||||
/// H3 - 卡片标题
|
||||
static const TextStyle h3 = TextStyle(
|
||||
fontSize: 16,
|
||||
fontWeight: FontWeight.w600,
|
||||
color: AppColorScheme.textPrimary,
|
||||
height: 1.4,
|
||||
);
|
||||
|
||||
/// H4 - 小标题
|
||||
static const TextStyle h4 = TextStyle(
|
||||
fontSize: 15,
|
||||
fontWeight: FontWeight.w600,
|
||||
color: AppColorScheme.textPrimary,
|
||||
height: 1.4,
|
||||
);
|
||||
|
||||
// ============================================
|
||||
// 正文样式 (Body)
|
||||
// ============================================
|
||||
|
||||
/// Body1 - 主要正文
|
||||
static const TextStyle body1 = TextStyle(
|
||||
fontSize: 14,
|
||||
fontWeight: FontWeight.normal,
|
||||
color: AppColorScheme.textPrimary,
|
||||
height: 1.5,
|
||||
);
|
||||
|
||||
/// Body2 - 次要正文
|
||||
static const TextStyle body2 = TextStyle(
|
||||
fontSize: 13,
|
||||
fontWeight: FontWeight.normal,
|
||||
color: AppColorScheme.textPrimary,
|
||||
height: 1.5,
|
||||
);
|
||||
|
||||
// ============================================
|
||||
// 辅助文字 (Caption & Small)
|
||||
// ============================================
|
||||
|
||||
/// Caption - 说明文字
|
||||
static const TextStyle caption = TextStyle(
|
||||
fontSize: 12,
|
||||
fontWeight: FontWeight.normal,
|
||||
color: AppColorScheme.textSecondary,
|
||||
height: 1.4,
|
||||
);
|
||||
|
||||
/// Small - 极小文字
|
||||
static const TextStyle small = TextStyle(
|
||||
fontSize: 11,
|
||||
fontWeight: FontWeight.normal,
|
||||
color: AppColorScheme.textSecondary,
|
||||
height: 1.3,
|
||||
);
|
||||
|
||||
/// Hint - 提示文字
|
||||
static const TextStyle hint = TextStyle(
|
||||
fontSize: 13,
|
||||
fontWeight: FontWeight.normal,
|
||||
color: AppColorScheme.textHint,
|
||||
height: 1.4,
|
||||
);
|
||||
|
||||
// ============================================
|
||||
// 特殊样式 (Special)
|
||||
// ============================================
|
||||
|
||||
/// 金额/价格 - 大号数字
|
||||
static const TextStyle amount = TextStyle(
|
||||
fontSize: 22,
|
||||
fontWeight: FontWeight.bold,
|
||||
color: AppColorScheme.textPrimary,
|
||||
height: 1.2,
|
||||
fontFeatures: [FontFeature.tabularFigures()],
|
||||
);
|
||||
|
||||
/// 价格 - 标准数字
|
||||
static const TextStyle price = TextStyle(
|
||||
fontSize: 16,
|
||||
fontWeight: FontWeight.w600,
|
||||
color: AppColorScheme.textPrimary,
|
||||
height: 1.3,
|
||||
fontFeatures: [FontFeature.tabularFigures()],
|
||||
);
|
||||
|
||||
/// 价格变化 - 涨跌幅
|
||||
static const TextStyle priceChange = TextStyle(
|
||||
fontSize: 13,
|
||||
fontWeight: FontWeight.w600,
|
||||
height: 1.3,
|
||||
fontFeatures: [FontFeature.tabularFigures()],
|
||||
);
|
||||
|
||||
/// 按钮文字
|
||||
static const TextStyle button = TextStyle(
|
||||
fontSize: 14,
|
||||
fontWeight: FontWeight.w600,
|
||||
color: AppColorScheme.textPrimary,
|
||||
height: 1.2,
|
||||
);
|
||||
|
||||
/// 链接文字
|
||||
static const TextStyle link = TextStyle(
|
||||
fontSize: 13,
|
||||
fontWeight: FontWeight.w500,
|
||||
color: AppColorScheme.textLink,
|
||||
decoration: TextDecoration.underline,
|
||||
height: 1.4,
|
||||
);
|
||||
|
||||
// ============================================
|
||||
// 可复制修改的样式方法
|
||||
// ============================================
|
||||
|
||||
/// 获取带颜色的标题样式
|
||||
static TextStyle headingWithColor(TextStyle style, Color color) {
|
||||
return style.copyWith(color: color);
|
||||
}
|
||||
|
||||
/// 获取带颜色的正文样式
|
||||
static TextStyle bodyWithColor(TextStyle style, Color color) {
|
||||
return style.copyWith(color: color);
|
||||
}
|
||||
|
||||
/// 获取粗体样式
|
||||
static TextStyle bold(TextStyle style) {
|
||||
return style.copyWith(fontWeight: FontWeight.bold);
|
||||
}
|
||||
|
||||
/// 获取半粗体样式
|
||||
static TextStyle semiBold(TextStyle style) {
|
||||
return style.copyWith(fontWeight: FontWeight.w600);
|
||||
}
|
||||
}
|
||||
|
||||
/// 兼容旧代码的别名
|
||||
@Deprecated('Use AppTextStyles instead')
|
||||
class AppText {
|
||||
AppText._();
|
||||
}
|
||||
@@ -69,15 +69,15 @@ class AppTheme {
|
||||
),
|
||||
),
|
||||
|
||||
// 按钮 - 渐变 CTA,大圆角
|
||||
// 按钮 - Pencil accent-primary (Gold)
|
||||
elevatedButtonTheme: ElevatedButtonThemeData(
|
||||
style: ElevatedButton.styleFrom(
|
||||
backgroundColor: AppColorScheme.darkPrimary,
|
||||
foregroundColor: AppColorScheme.darkBackground,
|
||||
minimumSize: const Size(double.infinity, 48),
|
||||
backgroundColor: AppColorScheme.darkSecondary,
|
||||
foregroundColor: AppColorScheme.darkOnSecondary,
|
||||
minimumSize: const Size(double.infinity, 52),
|
||||
padding: const EdgeInsets.symmetric(vertical: 14),
|
||||
shape: RoundedRectangleBorder(
|
||||
borderRadius: BorderRadius.circular(AppRadius.xxl),
|
||||
borderRadius: BorderRadius.circular(AppRadius.lg),
|
||||
),
|
||||
elevation: 0,
|
||||
textStyle: GoogleFonts.inter(
|
||||
@@ -89,7 +89,7 @@ class AppTheme {
|
||||
|
||||
textButtonTheme: TextButtonThemeData(
|
||||
style: TextButton.styleFrom(
|
||||
foregroundColor: AppColorScheme.darkPrimary,
|
||||
foregroundColor: AppColorScheme.darkSecondary,
|
||||
),
|
||||
),
|
||||
|
||||
@@ -174,15 +174,15 @@ class AppTheme {
|
||||
),
|
||||
),
|
||||
|
||||
// 按钮 - Plasma 渐变,full 圆角
|
||||
// 按钮 - Pencil accent-primary (dark gray)
|
||||
elevatedButtonTheme: ElevatedButtonThemeData(
|
||||
style: ElevatedButton.styleFrom(
|
||||
backgroundColor: AppColorScheme.lightPrimary,
|
||||
backgroundColor: const Color(0xFF1F2937),
|
||||
foregroundColor: const Color(0xFFFFFFFF),
|
||||
minimumSize: const Size(double.infinity, 48),
|
||||
minimumSize: const Size(double.infinity, 52),
|
||||
padding: const EdgeInsets.symmetric(vertical: 14),
|
||||
shape: RoundedRectangleBorder(
|
||||
borderRadius: BorderRadius.circular(AppRadius.xxl),
|
||||
borderRadius: BorderRadius.circular(AppRadius.lg),
|
||||
),
|
||||
elevation: 0,
|
||||
textStyle: GoogleFonts.inter(
|
||||
@@ -194,7 +194,7 @@ class AppTheme {
|
||||
|
||||
textButtonTheme: TextButtonThemeData(
|
||||
style: TextButton.styleFrom(
|
||||
foregroundColor: AppColorScheme.lightPrimary,
|
||||
foregroundColor: const Color(0xFF1F2937),
|
||||
),
|
||||
),
|
||||
|
||||
@@ -216,55 +216,56 @@ class AppTheme {
|
||||
}
|
||||
}
|
||||
|
||||
/// "The Kinetic Vault" & "The Ethereal Terminal" 文字样式系统
|
||||
/// Pencil 设计系统字体规范
|
||||
///
|
||||
/// 【优化】统一使用 Inter 字体(专业金融风格,币安同款字体)
|
||||
/// 对齐 Pencil 变量: Inter 字体, 明确的字号/字重层级
|
||||
/// 28px (总资产) → 24px (精选价格) → 22px (页面标题) → 16px (区块标题)
|
||||
/// → 14px (卡片标题/价格) → 13px (正文) → 12px (标签/副标题) → 11px (小文字)
|
||||
class AppTextStyles {
|
||||
AppTextStyles._();
|
||||
|
||||
// ============================================
|
||||
// Display - 核心数字 (价格/余额)
|
||||
// 参考 Binance/OKX 紧凑专业风格
|
||||
// Display - 核心数字
|
||||
// ============================================
|
||||
|
||||
/// D1 - 总资产余额 (22px)
|
||||
/// D1 - 总资产/余额 (28px w700) — Pencil $hero-value
|
||||
static TextStyle displayLarge(BuildContext context) => GoogleFonts.inter(
|
||||
fontSize: 22,
|
||||
fontSize: 28,
|
||||
fontWeight: FontWeight.w700,
|
||||
color: Theme.of(context).colorScheme.onSurface,
|
||||
height: 1.15,
|
||||
letterSpacing: -0.01,
|
||||
letterSpacing: -0.5,
|
||||
);
|
||||
|
||||
/// D2 - 主价格 (20px)
|
||||
/// D2 - 精选价格 (24px w700) — Pencil 行情卡片价格
|
||||
static TextStyle displayMedium(BuildContext context) => GoogleFonts.inter(
|
||||
fontSize: 20,
|
||||
fontWeight: FontWeight.w600,
|
||||
fontSize: 24,
|
||||
fontWeight: FontWeight.w700,
|
||||
color: Theme.of(context).colorScheme.onSurface,
|
||||
height: 1.15,
|
||||
);
|
||||
|
||||
/// D3 - 页面标题 (22px w700) — Pencil 页面大标题
|
||||
static TextStyle displaySmall(BuildContext context) => GoogleFonts.inter(
|
||||
fontSize: 22,
|
||||
fontWeight: FontWeight.w700,
|
||||
color: Theme.of(context).colorScheme.onSurface,
|
||||
height: 1.2,
|
||||
);
|
||||
|
||||
/// D3 - 次要价格 (18px)
|
||||
static TextStyle displaySmall(BuildContext context) => GoogleFonts.inter(
|
||||
fontSize: 18,
|
||||
fontWeight: FontWeight.w600,
|
||||
color: Theme.of(context).colorScheme.onSurface,
|
||||
height: 1.25,
|
||||
);
|
||||
|
||||
// ============================================
|
||||
// Headline - 标题
|
||||
// ============================================
|
||||
|
||||
/// 区域标题 (15px)
|
||||
/// 区块/导航标题 (16px w600) — Pencil $section-title
|
||||
static TextStyle headlineLarge(BuildContext context) => GoogleFonts.inter(
|
||||
fontSize: 15,
|
||||
fontSize: 16,
|
||||
fontWeight: FontWeight.w600,
|
||||
color: Theme.of(context).colorScheme.onSurface,
|
||||
height: 1.3,
|
||||
);
|
||||
|
||||
/// 卡片标题 (14px)
|
||||
/// 卡片标题/价格/标签页 (14px w600) — Pencil $card-title
|
||||
static TextStyle headlineMedium(BuildContext context) => GoogleFonts.inter(
|
||||
fontSize: 14,
|
||||
fontWeight: FontWeight.w600,
|
||||
@@ -272,7 +273,7 @@ class AppTextStyles {
|
||||
height: 1.35,
|
||||
);
|
||||
|
||||
/// 副标题 (13px)
|
||||
/// 副标题/持仓价值 (13px w500)
|
||||
static TextStyle headlineSmall(BuildContext context) => GoogleFonts.inter(
|
||||
fontSize: 13,
|
||||
fontWeight: FontWeight.w500,
|
||||
@@ -284,7 +285,7 @@ class AppTextStyles {
|
||||
// Body - 正文
|
||||
// ============================================
|
||||
|
||||
/// 主要正文 (13px)
|
||||
/// 主要正文 (13px w400)
|
||||
static TextStyle bodyLarge(BuildContext context) => GoogleFonts.inter(
|
||||
fontSize: 13,
|
||||
fontWeight: FontWeight.w400,
|
||||
@@ -292,7 +293,7 @@ class AppTextStyles {
|
||||
height: 1.45,
|
||||
);
|
||||
|
||||
/// 次要正文 (12px)
|
||||
/// 次要正文/副标题 (12px w400) — Pencil $subtitle
|
||||
static TextStyle bodyMedium(BuildContext context) => GoogleFonts.inter(
|
||||
fontSize: 12,
|
||||
fontWeight: FontWeight.w400,
|
||||
@@ -300,7 +301,7 @@ class AppTextStyles {
|
||||
height: 1.45,
|
||||
);
|
||||
|
||||
/// 辅助文字 (11px)
|
||||
/// 辅助文字/币种全名 (11px w400) — Pencil $small-text
|
||||
static TextStyle bodySmall(BuildContext context) => GoogleFonts.inter(
|
||||
fontSize: 11,
|
||||
fontWeight: FontWeight.w400,
|
||||
@@ -312,26 +313,26 @@ class AppTextStyles {
|
||||
// Label - 标签
|
||||
// ============================================
|
||||
|
||||
/// 常规标签 (11px)
|
||||
/// 按钮/标签页标签 (12px w500) — Pencil $tab-label
|
||||
static TextStyle labelLarge(BuildContext context) => GoogleFonts.inter(
|
||||
fontSize: 11,
|
||||
fontSize: 12,
|
||||
fontWeight: FontWeight.w500,
|
||||
color: Theme.of(context).colorScheme.onSurface,
|
||||
height: 1.35,
|
||||
);
|
||||
|
||||
/// 小标签 (10px)
|
||||
/// 涨跌幅标签 (11px w500) — Pencil $change-badge
|
||||
static TextStyle labelMedium(BuildContext context) => GoogleFonts.inter(
|
||||
fontSize: 10,
|
||||
fontSize: 11,
|
||||
fontWeight: FontWeight.w500,
|
||||
color: Theme.of(context).colorScheme.onSurfaceVariant,
|
||||
height: 1.35,
|
||||
);
|
||||
|
||||
/// 极小标签 (9px)
|
||||
/// 涨跌幅标签-粗 (11px w600) — Pencil $change-badge-bold
|
||||
static TextStyle labelSmall(BuildContext context) => GoogleFonts.inter(
|
||||
fontSize: 9,
|
||||
fontWeight: FontWeight.w500,
|
||||
fontSize: 11,
|
||||
fontWeight: FontWeight.w600,
|
||||
color: Theme.of(context).colorScheme.onSurfaceVariant,
|
||||
height: 1.35,
|
||||
);
|
||||
@@ -340,108 +341,33 @@ class AppTextStyles {
|
||||
// 数字/金额 - Inter (等宽特性)
|
||||
// ============================================
|
||||
|
||||
/// 大号数字 (22px) - 主价格、总资产
|
||||
/// 大号数字 (28px w700) - 总资产、余额
|
||||
static TextStyle numberLarge(BuildContext context) => GoogleFonts.inter(
|
||||
fontSize: 22,
|
||||
fontWeight: FontWeight.w600,
|
||||
fontSize: 28,
|
||||
fontWeight: FontWeight.w700,
|
||||
color: Theme.of(context).colorScheme.onSurface,
|
||||
height: 1.15,
|
||||
letterSpacing: -0.5,
|
||||
fontFeatures: const [FontFeature.tabularFigures()],
|
||||
);
|
||||
|
||||
/// 中号数字 (16px) - 次要价格、数量
|
||||
/// 中号数字 (14px w600) - 价格、金额
|
||||
static TextStyle numberMedium(BuildContext context) => GoogleFonts.inter(
|
||||
fontSize: 16,
|
||||
fontWeight: FontWeight.w500,
|
||||
fontSize: 14,
|
||||
fontWeight: FontWeight.w600,
|
||||
color: Theme.of(context).colorScheme.onSurface,
|
||||
height: 1.25,
|
||||
fontFeatures: const [FontFeature.tabularFigures()],
|
||||
);
|
||||
|
||||
/// 小号数字 (13px) - 涨跌幅、小量
|
||||
/// 小号数字 (12px w500) - 涨跌幅、数量
|
||||
static TextStyle numberSmall(BuildContext context) => GoogleFonts.inter(
|
||||
fontSize: 13,
|
||||
fontSize: 12,
|
||||
fontWeight: FontWeight.w500,
|
||||
color: Theme.of(context).colorScheme.onSurface,
|
||||
height: 1.3,
|
||||
fontFeatures: const [FontFeature.tabularFigures()],
|
||||
);
|
||||
|
||||
// ============================================
|
||||
// 兼容旧代码的静态样式 (已废弃)
|
||||
// ============================================
|
||||
|
||||
@Deprecated('Use displaySmall instead')
|
||||
static const TextStyle heading1 = TextStyle(
|
||||
fontSize: 18,
|
||||
fontWeight: FontWeight.bold,
|
||||
color: Color(0xFFFFFFFF),
|
||||
);
|
||||
|
||||
@Deprecated('Use headlineLarge instead')
|
||||
static const TextStyle heading2 = TextStyle(
|
||||
fontSize: 15,
|
||||
fontWeight: FontWeight.bold,
|
||||
color: Color(0xFFFFFFFF),
|
||||
);
|
||||
|
||||
@Deprecated('Use headlineMedium instead')
|
||||
static const TextStyle heading3 = TextStyle(
|
||||
fontSize: 14,
|
||||
fontWeight: FontWeight.w600,
|
||||
color: Color(0xFFFFFFFF),
|
||||
);
|
||||
|
||||
@Deprecated('Use headlineSmall instead')
|
||||
static const TextStyle heading4 = TextStyle(
|
||||
fontSize: 13,
|
||||
fontWeight: FontWeight.w600,
|
||||
color: Color(0xFFFFFFFF),
|
||||
);
|
||||
|
||||
@Deprecated('Use bodyLarge instead')
|
||||
static const TextStyle body1 = TextStyle(
|
||||
fontSize: 13,
|
||||
color: Color(0xFFFFFFFF),
|
||||
);
|
||||
|
||||
@Deprecated('Use bodyMedium instead')
|
||||
static const TextStyle body2 = TextStyle(
|
||||
fontSize: 12,
|
||||
color: Color(0xFFFFFFFF),
|
||||
);
|
||||
|
||||
@Deprecated('Use labelSmall instead')
|
||||
static const TextStyle caption = TextStyle(
|
||||
fontSize: 11,
|
||||
color: Color(0xFFA1A1AA),
|
||||
);
|
||||
|
||||
@Deprecated('Use labelSmall instead')
|
||||
static const TextStyle hint = TextStyle(
|
||||
fontSize: 12,
|
||||
color: Color(0xFF71717A),
|
||||
);
|
||||
|
||||
@Deprecated('Use numberMedium instead')
|
||||
static const TextStyle price = TextStyle(
|
||||
fontSize: 16,
|
||||
fontWeight: FontWeight.bold,
|
||||
color: Color(0xFFFFFFFF),
|
||||
);
|
||||
|
||||
@Deprecated('Use numberSmall with color instead')
|
||||
static const TextStyle change = TextStyle(
|
||||
fontSize: 13,
|
||||
fontWeight: FontWeight.w600,
|
||||
);
|
||||
|
||||
@Deprecated('Use numberSmall instead')
|
||||
static const TextStyle number = TextStyle(
|
||||
fontSize: 13,
|
||||
fontWeight: FontWeight.w500,
|
||||
color: Color(0xFFFFFFFF),
|
||||
);
|
||||
}
|
||||
|
||||
/// 动画时长
|
||||
|
||||
Reference in New Issue
Block a user