我正在使用我的应用程序的样式,我无法更改TextField输入的颜色,没有任何属性可以更改它。
new Theme(
data: new ThemeData(
hintColor: Colors.white
),
child:
new TextField(
focusNode: _focusUsername,
controller: _controller,
decoration: new InputDecoration(
border: InputBorder.none,
fillColor: Colors.grey,
filled: true,
hintText: 'Username',
))),
答案 0 :(得分:7)
您可以指定TextStyle
new TextField(
style: new TextStyle(color: Colors.white),
...
https://docs.flutter.io/flutter/painting/TextStyle-class.html
答案 1 :(得分:4)
要在我使用的ThemeData中进行更改,
ThemeData(
textTheme: TextTheme(subtitle1: TextStyle(color: Colors.grey)),
答案 2 :(得分:3)
在下面的示例中,文本为“红色”,TextField的背景为“橙色”。
new TextField(
style: new TextStyle(color: Colors.red),
decoration: new InputDecoration(fillColor: Colors.orange, filled: true),
)
这是你的意思吗?
如果你想通过应用程序的主题一般性地做到这一点,那确实很棘手。它可能会是这样的:
theme: new ThemeData(
textTheme: new TextTheme(
body1: new TextStyle(color: Colors.black),
body2: new TextStyle(color: Colors.black),
button: new TextStyle(color: Colors.black),
caption: new TextStyle(color: Colors.black),
display1: new TextStyle(color: Colors.black),
display2: new TextStyle(color: Colors.black),
display3: new TextStyle(color: Colors.black),
display4: new TextStyle(color: Colors.black),
headline: new TextStyle(color: Colors.black),
subhead: new TextStyle(color: Colors.red), // <-- that's the one
title: new TextStyle(color: Colors.black),
),
inputDecorationTheme: new InputDecorationTheme(
fillColor: Colors.orange,
filled: true,
)
)