Files
flutter-template/lib/core/theme/theme_assets.dart
T
SkyJourney 61017f1c39 chore: 初始化脚手架 — sunny_mochi 企业级 Flutter 模板
Core 基础设施:Flavor 三包体系、Drift+SQLCipher 加密数据库
7 拦截器 Dio 网络栈、CrashReporter 崩溃日志、Sealed Failure 错误体系
5 色板主题系统、Auth 认证骨架(Clean Architecture)、Dev Panel、Mock Adapter

通过验证:flutter analyze(0 errors)、flutter test(全绿)、staging APK 74.8MB
2026-05-14 12:51:05 +08:00

33 lines
1.4 KiB
Dart

import 'package:sunny_mochi/core/theme/app_colors.dart';
/// 主题化图片资源分发工具。
///
/// 约定:`assets/themes/{scheme}/{name}.png`,每套主题放同名文件。
/// 调用:`Image.asset(ThemeAssets.tabHomeNormal(scheme))`
///
/// TODO: 业务项目按需扩展此类,添加与品牌设计对应的主题图片路径。
/// 若 TabBar 使用 Material Icons(当前脚手架默认),此类可不使用。
abstract class ThemeAssets {
static const String _root = 'assets/themes';
static String _dir(AppColorScheme scheme) => '$_root/${scheme.name}';
// ═══ Tab 图标(脚手架默认 2 Tab,业务项目按需扩展)══════════════════════
/// Home Tab
static String tabHomeNormal(AppColorScheme scheme) =>
'${_dir(scheme)}/tab_home_normal.png';
static String tabHomeSelected(AppColorScheme scheme) =>
'${_dir(scheme)}/tab_home_selected.png';
/// Mine Tab
static String tabMineNormal(AppColorScheme scheme) =>
'${_dir(scheme)}/tab_mine_normal.png';
static String tabMineSelected(AppColorScheme scheme) =>
'${_dir(scheme)}/tab_mine_selected.png';
// ═══ 业务图片占位(TODO: 填入项目实际图片路径)════════════════════════════
// static String heroBanner(AppColorScheme scheme) =>
// '${_dir(scheme)}/hero_banner.png';
}