Theme Manager | Coderz Product

theme_manager

Last updated:

0 purchases

theme_manager Image
theme_manager Images

Free

Languages

Categories

Add to Cart

Description:

theme manager

theme_manager #
A theme manager for light, dark, and system themes. #

A theme manager that supports light, dark, and system default themes. State is retained and applied upon application start. Heavily inspired by dynamic_theme by Norbert Kozsir.
Getting Started #
Add theme_manager to your project.
dependencies:
theme_manager: ^2.0.4
copied to clipboard
run flutter packages get and import theme_manager
import 'package:theme_manager/theme_manager.dart';
copied to clipboard
A dialog is provided that can switch between themes.
import 'package:theme_manager/theme_picker_dialog.dart';
copied to clipboard
How to use #
Make sure WidgetsFlutterBinding are initialized. This is required.
void main() {
WidgetsFlutterBinding.ensureInitialized(); // Required
runApp(MyApp());
}
copied to clipboard
Wrap your MaterialApp with ThemeManager:
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return ThemeManager(
defaultBrightnessPreference: BrightnessPreference.system,
data: (Brightness brightness) => ThemeData(
primarySwatch: Colors.blue,
accentColor: Colors.lightBlue,
brightness: brightness,
),
loadBrightnessOnStart: true,
themedWidgetBuilder: (BuildContext context, ThemeData theme) {
return MaterialApp(
title: 'Theme Manager Demo',
theme: theme,
home: MyHomePage(),
);
},
);
}
}
copied to clipboard
When you want to change your theme:
void setAsSystemDefault() =>
ThemeManager.of(context).setBrightnessPreference(BrightnessPreference.system);
void setAsLight() =>
ThemeManager.of(context).setBrightnessPreference(BrightnessPreference.light);
void setAsDark() =>
ThemeManager.of(context).setBrightnessPreference(BrightnessPreference.dark);
copied to clipboard
The system default will load either light or dark based on the device preferences. If your device
changes themes at sunset or sunrise then light/dark mode will apply automatically.
The BrightnessPreference is saved in SharedPreferences automatically. There is also a clear
function to remove the preferences.
void clear() => ThemeManager.of(context).clearBrightnessPreference();
copied to clipboard
A dialog widget to change the brightness! #

Getting Started #
For help getting started with Flutter, view our online documentation.
For help on editing package code, view the documentation.

License:

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files In This Product: (if this is empty don't purchase this product)

Customer Reviews

There are no reviews.