Flutter/UI/ダークモード
提供: 初心者エンジニアの簡易メモ
公式
https://github.com/Norbert515/dynamic_theme
インストール
pubspec.yaml
dependencies: dynamic_theme: ^1.0.1
サンプル
import 'package:dynamic_theme/dynamic_theme.dart';
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new DynamicTheme(
defaultBrightness: Brightness.light,
data: (brightness) => new ThemeData(
primarySwatch: Colors.indigo,
brightness: brightness,
),
themedWidgetBuilder: (context, theme) {
return new MaterialApp(
title: 'Flutter Demo',
theme: theme,
home: new MyHomePage(title: 'Flutter Demo Home Page'),
);
}
);
}
}
設定切り替え
void changeBrightness() {
DynamicTheme.of(context).setBrightness(Theme.of(context).brightness == Brightness.dark? Brightness.light: Brightness.dark);
}
