【问题标题】:What is the difference between Material and MaterialApp in Flutter?Flutter中的Material和MaterialApp有什么区别?
【发布时间】:2018-12-06 06:04:18
【问题描述】:

我正在使用 Flutter 开发应用程序。如果我选择MaterialApp 作为我的应用程序的父小部件,我的应用程序中的所有Text 小部件都带有黄色下划线。另一方面,如果我只使用Material 作为父小部件,Text 小部件下方不会显示黄线。

MaterialMaterialApp 有什么区别?

【问题讨论】:

    标签: flutter flutter-layout


    【解决方案1】:

    MaterialApp 是一个小部件,它引入了许多有趣的工具,例如 NavigatorTheme,以帮助您开发应用程序。

    另一方面,Material 是一个小部件,用于定义符合 Material 规则的 UI 元素。它定义了海拔、形状和东西。然后被许多材料小部件重用,例如AppbarCardFloatingButton

    Text 中的黄色下划线是MaterialApp 作为备用Theme 引入的。此处用于调试目的,警告您需要在Text 上方的某个位置使用Material

    简而言之,两者都用。您应该在应用的根目录附近有一个MaterialApp。然后在您想使用TextInkWell 时使用引入Material 实例的小部件(例如ScaffoldAppbarDialog、...)。

    【讨论】:

    • Scaffold 尤其重要。你的应用的所有屏幕都应该被包裹在一个脚手架中。
    • @boformer 为什么这么说?
    • @nbro Scaffold 实际上并不重要。它肯定会有所帮助,但非物质应用程序并不关心它。重点是在某处有一个 Theme 实例。
    【解决方案2】:

    MaterialApp :MaterialApp 配置顶级 Navigator 来搜索路由或定义 Home。

    Material:用于子 UI 小部件的渲染和效果。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-10-15
      • 2018-12-21
      • 2023-01-26
      • 2020-05-21
      • 2021-11-12
      • 2021-11-12
      • 2021-10-19
      • 2020-10-25
      相关资源
      最近更新 更多