flutter - Flutter:尝试在 MaterialApp() 下的 inputDecorationTheme 中设置 TextField 样式时出现 MediaQuery.of() 错误
问题描述
我正在尝试使用 MediaQuery 使用一些响应式字体大小和填充设置 inputDecorationTheme,但出现以下错误:
“使用不包含 MediaQuery 的上下文调用 MediaQuery.of()。从传递给 MediaQuery.of() 的上下文开始找不到 MediaQuery 祖先。这可能是因为您没有 WidgetsApp 或 MaterialApp 小部件(这些小部件引入了 MediaQuery),或者如果您使用的上下文来自这些小部件上方的小部件,则可能会发生这种情况。使用的上下文是:MyApp“
我已经浏览过其他有类似问题的帖子,但就我而言,我在 ThemeData > inputDecorationTheme 中使用 MediaQuery。
注意:我使用单独的文件来访问 MediQuery。下面是我的代码:
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
home: MyHomeApp(),
theme: ThemeData(
primaryColor: Color(0xff00bcd4),
// TextFormField Decoration
inputDecorationTheme: InputDecorationTheme(
contentPadding:
EdgeInsets.symmetric(vertical: SizeConfig.heightMultiplier * 2),
labelStyle: TextStyle(
fontFamily: "Montserrat",
fontSize: SizeConfig.textMultiplier * 2.3),
hintStyle: TextStyle(
fontFamily: "Montserrat",
fontSize: SizeConfig.textMultiplier * 2.2),
enabledBorder:
OutlineInputBorder(borderSide: BorderSide(color: custColor)),
focusedBorder: OutlineInputBorder(
borderSide: BorderSide(color: Colors.greenAccent),
),
),
),
解决方案
推荐阅读
- javascript - Vanilla JS - ES6:.map() 不是函数
- python - 如何使用 Python 脚本中的 Cocoa API 最小化/最大化 macOS 中的窗口?
- java - Hibernate 使用 REST 添加具有外键的实体
- html - 修复了多个 div 标签不重叠的问题
- webrtc - 如何使用 STUN 和 TURN 使 WebRTC 在 3G 网络上工作?
- python - 从 Python 脚本获取 macOS 上所有窗口标题的列表
- c - 如何从文本文件中读取列并保存到 C 中的单独数组中?
- java - 运行 JavaFx 媒体应用程序时出现模块错误
- reactjs - 反应环境变量.env返回未定义
- java - SWT Button: setSelection(true) not working if SWT.READ_ONLY