我正在使用Flutter开发一个应用程序。如果我选择MaterialApp
作为我的应用程序的父窗口小部件,我的应用程序中的所有Text
小部件都带有下划线黄色。另一方面,如果我只使用Material
作为父窗口小部件,则在Text
窗口小部件下不会显示黄线。
Material
和MaterialApp
有什么区别?
MaterialApp
是一个小部件,它引入了许多有趣的工具,如Navigator
或Theme
,以帮助您开发您的应用程序。
另一方面,Material
是一个用于定义关于Material规则的UI元素的小部件。它定义了高度,形状和东西。然后由许多材料小部件重复使用,例如Appbar
或Card
或FloatingButton
。
你可以在Text
找到的黄色下划线是由MaterialApp
作为后备Theme
引入的。这是出于调试目的,警告您需要在Material
上方的某处使用Text
。
简而言之,两者兼用。你应该在你的应用程序的根目录附近有一个MaterialApp
。然后当你想使用Material
或Scaffold
时,使用引入Appbar
实例(如Dialog
,Text
,InkWell
,......)的小部件。