Flutter中Material和MaterialApp有什么区别?

Dev*_*ine 10 flutter flutter-layout

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

Material和之间有什么区别MaterialApp

Rém*_*let 13

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

Material另一方面,用于定义关于材料规则的UI元素的小部件.它定义了高度,形状和东西.然后通过许多材料部件如重复使用AppbarCardFloatingButton.

您可以找到的黄色下划线TextMaterialApp作为后备引入的Theme.这是出于调试目的,警告您需要Material在您的上方某处使用Text.

简而言之,两者兼用.你应该有一个MaterialApp接近你的应用程序的根目录.然后使用引进的小部件Material实例(如一个Scaffold,Appbar,Dialog,...)如果你想使用TextInkWell.

  • @nbro支架实际上并不那么重要。它肯定会有所帮助,但非实质性应用程序并不在乎。要点是在某个地方有一个Theme实例。 (2认同)