Below mentioned code is theme changes. can any one please tell me where i'm going wrong. The problem is -> when i get the app color codes from the custom common class it's not working but if i put it directly when it needed it is working. this is the issue.
`
GetMaterialApp(
debugShowCheckedModeBanner = false,
title = "",
themeMode = Utils.isDarkMode() ? ThemeMode.dark : ThemeMode.light,
darkTheme = AppThemes.darkThemeData,
initialRoute = AppPages.INITIAL,
theme = AppThemes.lightThemeData,
getPages = AppPages.routes,
)
class AppThemes {
static const Color _lightFocusColor = Color(0xFFFFFFFF);
static const Color _darkFocusColor = Color(0xFF181A1F);
static ThemeData lightThemeData =
themeData(lightColorScheme, _lightFocusColor, true);
static ThemeData darkThemeData =
themeData(darkColorScheme, _darkFocusColor, false);
static ThemeData themeData(
ColorScheme colorScheme, Color focusColor, bool isLight) {
return ThemeData(
colorScheme: colorScheme,
brightness: colorScheme.brightness,
appBarTheme: AppBarTheme(
color: colorScheme.primary,
elevation: 0,
systemOverlayStyle: SystemUiOverlayStyle(
statusBarColor: colorScheme.background,
systemNavigationBarColor: colorScheme.background,
statusBarBrightness: colorScheme.brightness,
statusBarIconBrightness: colorScheme.brightness,
systemNavigationBarIconBrightness: colorScheme.brightness,
),
),
primaryColor: colorScheme.primary,
iconTheme: IconThemeData(color: colorScheme.onPrimary),
canvasColor: colorScheme.background,
scaffoldBackgroundColor: colorScheme.background,
highlightColor: Colors.transparent,
focusColor: focusColor,
textTheme: textTheme,
buttonTheme: buttonThemeData,
elevatedButtonTheme: elevatedThemeData,
);
}
static const ColorScheme lightColorScheme = ColorScheme(
background: Color(0xFFFFFFFF),
onBackground: Color(0xFFFFFFFF),
surface: Colors.transparent,
onSurface: Colors.transparent,
primary: Color(0xFFF5484A),
onPrimary: Color(0xFFF5484A),
secondary: Color(0xFFF5484A),
onSecondary: Color(0xFFF5484A),
error: Colors.red,
onError: Colors.white,
brightness: Brightness.light,
);
static const ColorScheme darkColorScheme = ColorScheme(
background: Color(0xFF181A1F),
onBackground: Color(0xFF181A1F),
surface: Colors.transparent,
onSurface: Colors.transparent,
primary: Color(0xFFF5484A),
onPrimary: Color(0xFFF5484A),
secondary: Color(0xFFF5484A),
onSecondary: Color(0xFFF5484A),
error: Colors.red,
onError: Colors.white,
brightness: Brightness.dark,
);
}
TextTheme textTheme = TextTheme(
displayLarge: TextStyle(
fontSize: 24.sp,
color: AppColors.textLargeColor,
decoration: TextDecoration.none,
fontFamily: Config.fontName,
),
headlineLarge: TextStyle(
fontSize: 24.sp,
color: AppColors.textLargeColor,
decoration: TextDecoration.none,
fontFamily: Config.fontName,
),
//
bodyLarge: TextStyle(
fontSize: 16.sp,
color: AppColors.textBodyLargeColor,
decoration: TextDecoration.none,
fontFamily: Config.fontName,
),
labelLarge: TextStyle(
fontSize: 16.sp,
color: AppColors.textBodyLargeColor,
decoration: TextDecoration.none,
fontFamily: Config.fontName,
),
labelMedium: TextStyle(
fontSize: 14.sp,
color: AppColors.textDescriptionColor,
decoration: TextDecoration.none,
fontFamily: Config.fontName,
),
bodyMedium: TextStyle(
fontSize: 14.sp,
color: AppColors.textDescriptionColor,
decoration: TextDecoration.none,
fontFamily: Config.fontName,
),
labelSmall: TextStyle(
fontSize: 12.sp,
color: AppColors.textDescriptionColor,
decoration: TextDecoration.none,
fontFamily: Config.fontName,
),
bodySmall: TextStyle(
fontSize: 10.sp,
color: AppColors.textDescriptionColor,
decoration: TextDecoration.none,
fontFamily: Config.fontName,
),
);
`
Below code is the where app theme is changing.
final themeData = controller.isDarkMode.value
? AppThemes.darkThemeData
: AppThemes.lightThemeData;
Get.changeTheme(themeData);
final theme = controller.isDarkMode.value
? ThemeMode.dark
: ThemeMode.light;
Get.changeThemeMode(theme);
update();