Reputation: 2834
I'm getting MediaQuery.of() called with a context that does not contain a MediaQuery.
when trying to access MediaQuery from MaterialApp
:
return new MaterialApp(
title: 'Flutter Demo',
theme: getTheme(MediaQuery.of(context)),
home: new Container(),
);
Upvotes: 3
Views: 1442
Reputation: 277697
Use builder
of MaterialApp
instead. So that you can use MediaQuery
instantiated by MatetialApp
inside your Theme
.
new MaterialApp(
builder: (context, child) {
return new Theme(
data: getTheme(MediaQuery.of(context)),
child: child,
);
},
home: new ChatScreen(),
),
Upvotes: 7
Reputation: 2834
return new MaterialApp(
title: 'Flutter Demo',
theme: getTheme(new MediaQueryData.fromWindow(ui.window)),
home: new Container(),
);
Thanks Günter :)
Upvotes: 3