我想在我的Flutter应用程序中应用一个主题在禁用的文本字段的标签上,因为我现在的灰色很难阅读。
我想将其应用到我的整个应用程序,所以我想使用主题化,但是,我没有找到任何解决方案,使我能够自定义标签的文本样式只有当文本表单字段被禁用
如何在Flutter中为禁用的文本表单字段标签设置主题和全局颜色?
我知道如何有条件地更改标签的文本样式,但是,我需要记住始终使用相同的样式(或者我可以 Package 小部件,但这听起来也不是最佳的)。我可以通过decoration
命名参数自定义标签的颜色,如下所示:
TextFormField(
enabled: isEnabled,
decoration: InputDecoration(
labelText: 'Value',
labelStyle: TextStyle(color: isEnabled ? Colors.green : Colors.red),
),
// .... other fields, like controller might come here
),
字符串
4条答案
按热度按时间hc8w905p1#
您可以使用Theme来 Package 您的小部件设置属性 disabledColor。
示例:Demo
字符串
或全局
型
5us2dqdw2#
可以使用InputDecorationTheme。
MaterialApp有一个属性
theme
,您可以在其中设置自定义ThemeData。ThemeData有一个属性
inputDecorationTheme
,您可以在其中设置InputDecorationTheme。InputDecorationTheme有很多属性可用于自定义文本字段。
字符串
monwx1rj3#
要为
InputDecoration
中的禁用字段定义其他标签颜色,可以使用MaterialStateTextStyle.resolveWith
字符串
wd2eg0qa4#
这就是我的工作:
style:bodyText().copyWith(color:Colors.black),在我的例子中,//bodyText()是在其他地方定义的
它强制文本颜色为黑色,而不管TextFormField是启用还是禁用