【发布时间】:2021-09-15 10:18:42
【问题描述】:
我正在使用提供程序进行状态管理。 状态变量适用于其他小部件。 但是当我在 materialApp 中使用状态变量作为主题时,这会引发错误(也重新启动)。 还声明提供者在树的高处。
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return ChangeNotifierProvider<Data>(
create: (context) => Data(),
child: MaterialApp(
theme: Provider.of<Data>(context).current,
home: Page1(),
debugShowCheckedModeBanner: false,
),
);
}}
数据类:
class Data extends ChangeNotifier {
String school = "xyz";
String name = "samuel";
int age = 123;
int val = 0;
String userinput = "";
ThemeData current = ThemeData.dark();
void increment() {
val++;
notifyListeners();
}
void display(String char) {
userinput = char;
notifyListeners();
}
}
【问题讨论】:
标签: flutter flutter-layout flutter-provider