first commit

This commit is contained in:
ytc1012
2025-11-13 15:45:28 +08:00
commit 6b321890c0
54 changed files with 8412 additions and 0 deletions

119
lib/theme/app_theme.dart Normal file
View File

@@ -0,0 +1,119 @@
import 'package:flutter/material.dart';
import 'package:google_fonts/google_fonts.dart';
class AppTheme {
// 颜色系统
static const Color primaryColor = Color(0xFF6366F1); // Indigo
static const Color secondaryColor = Color(0xFF8B5CF6); // Purple
static const Color accentColor = Color(0xFF10B981); // Green
// 分类颜色
static const Color workColor = Color(0xFF6366F1); // Indigo
static const Color studyColor = Color(0xFF8B5CF6); // Purple
static const Color entertainmentColor = Color(0xFFF59E0B); // Orange
static const Color socialColor = Color(0xFFEC4899); // Pink
static const Color toolColor = Color(0xFF6B7280); // Gray
// 状态颜色
static const Color successColor = Color(0xFF10B981);
static const Color warningColor = Color(0xFFF59E0B);
static const Color errorColor = Color(0xFFEF4444);
static const Color infoColor = Color(0xFF3B82F6);
// 浅色主题
static ThemeData get lightTheme {
return ThemeData(
useMaterial3: true,
colorScheme: ColorScheme.fromSeed(
seedColor: primaryColor,
brightness: Brightness.light,
),
textTheme: GoogleFonts.interTextTheme(),
scaffoldBackgroundColor: Colors.white,
cardTheme: CardThemeData(
elevation: 0,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(12),
),
color: Colors.grey[50],
),
appBarTheme: AppBarTheme(
elevation: 0,
backgroundColor: Colors.white,
foregroundColor: Colors.black87,
titleTextStyle: GoogleFonts.inter(
fontSize: 18,
fontWeight: FontWeight.w600,
color: Colors.black87,
),
),
);
}
// 深色主题
static ThemeData get darkTheme {
return ThemeData(
useMaterial3: true,
colorScheme: ColorScheme.fromSeed(
seedColor: primaryColor,
brightness: Brightness.dark,
),
textTheme: GoogleFonts.interTextTheme(ThemeData.dark().textTheme),
scaffoldBackgroundColor: const Color(0xFF1F2937),
cardTheme: CardThemeData(
elevation: 0,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(12),
),
color: const Color(0xFF374151),
),
appBarTheme: AppBarTheme(
elevation: 0,
backgroundColor: const Color(0xFF1F2937),
foregroundColor: Colors.white,
titleTextStyle: GoogleFonts.inter(
fontSize: 18,
fontWeight: FontWeight.w600,
color: Colors.white,
),
),
);
}
// 获取分类颜色
static Color getCategoryColor(String category) {
switch (category.toLowerCase()) {
case 'work':
return workColor;
case 'study':
return studyColor;
case 'entertainment':
return entertainmentColor;
case 'social':
return socialColor;
case 'tool':
return toolColor;
default:
return Colors.grey;
}
}
// 获取分类中文名称
static String getCategoryName(String category) {
switch (category.toLowerCase()) {
case 'work':
return '工作';
case 'study':
return '学习';
case 'entertainment':
return '娱乐';
case 'social':
return '社交';
case 'tool':
return '工具';
default:
return '其他';
}
}
}