123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- import 'package:flutter/material.dart';
- class Themes {
- static Map<String, ThemeData> get values =>
- {'默认主题': defaultTheme, '蓝色主题': lightTheme, '夜间主题': darkTheme};
- static final ThemeData defaultTheme = ThemeData(
- primaryColor: const Color(0xFF038873),
- primaryColorLight: Colors.green,
- primaryColorDark: const Color(0xFF026F5C),
- indicatorColor: Colors.green,
- checkboxTheme: CheckboxThemeData(
- fillColor: MaterialStateProperty.resolveWith<Color?>(
- (Set<MaterialState> states) {
- if (states.contains(MaterialState.disabled)) {
- return null;
- }
- if (states.contains(MaterialState.selected)) {
- return const Color(0xFF038873);
- }
- return null;
- }),
- ),
- radioTheme: RadioThemeData(
- fillColor: MaterialStateProperty.resolveWith<Color?>(
- (Set<MaterialState> states) {
- if (states.contains(MaterialState.disabled)) {
- return null;
- }
- if (states.contains(MaterialState.selected)) {
- return const Color(0xFF038873);
- }
- return null;
- }),
- ),
- switchTheme: SwitchThemeData(
- thumbColor: MaterialStateProperty.resolveWith<Color?>(
- (Set<MaterialState> states) {
- if (states.contains(MaterialState.disabled)) {
- return null;
- }
- if (states.contains(MaterialState.selected)) {
- return const Color(0xFF038873);
- }
- return null;
- }),
- trackColor: MaterialStateProperty.resolveWith<Color?>(
- (Set<MaterialState> states) {
- if (states.contains(MaterialState.disabled)) {
- return null;
- }
- if (states.contains(MaterialState.selected)) {
- return const Color(0xFF038873);
- }
- return null;
- }),
- ),
- colorScheme: const ColorScheme(
- primary: Color(0xFF038873),
- secondary: Color(0xFF038873),
- surface: Colors.white,
- background: Colors.white,
- error: Color(0xffb00020),
- onPrimary: Colors.white,
- onSecondary: Colors.white,
- onSurface: Colors.black,
- onBackground: Colors.black,
- onError: Colors.white,
- brightness: Brightness.light,
- ).copyWith(error: const Color(0xffb00020)),
- );
- static final ThemeData lightTheme = ThemeData.light();
- static final ThemeData darkTheme =
- ThemeData.dark().copyWith(brightness: Brightness.dark);
- }
|