如何更改textField下划线颜色?
我是扑扑和飞镖的新手。目前,在我的一个个人项目中使用它。
在我的所有表单中,textField的下划线都显示为蓝色。我想将其更改为其他颜色。我正在使用的一段代码就像…
new TextField( controller: this._emailController,
decoration: new InputDecoration(
hintText: "Enter your email",
labelText: "Email",
labelStyle: new TextStyle(
color: const Color(0xFF424242)
)
),
),
无法理解如何实现这一目标。
注意:我知道这里有一个类似的问题,在Flutter中更改TextField的下划线。但是,在那里还没有完全解决。另外,在这里看起来与我类似的另一个链接使用appcompat
v7更改EditText底线颜色,但实际上属于Java开发,是通过使用JAVA而不是我用于Android应用开发的DART(flutter)来实现的。因此,请不要对那些链接感到困惑。
回答:
刚使用过:
decoration: InputDecoration( enabledBorder: UnderlineInputBorder(
borderSide: BorderSide(color: Colors.cyan),
),
focusedBorder: UnderlineInputBorder(
borderSide: BorderSide(color: Colors.cyan),
),
),
这个对我有用 :)
逻辑答案是使用InputBorder,尤其是UnderlineInputDecorator,并将其作为边框传递给inputdecorator。但是,所有这些操作都告诉InputDecorator是应该使用下划线还是其他指定的内容。
实际颜色基于主题-来源:
Color _getActiveColor(ThemeData themeData) { if (isFocused) {
switch (themeData.brightness) {
case Brightness.dark:
return themeData.accentColor;
case Brightness.light:
return themeData.primaryColor;
}
}
return themeData.hintColor;
}
因此,要更改颜色,请执行以下操作(或为整个应用程序指定主题):
new Theme( data: new ThemeData(
primaryColor: Colors.red,
accentColor: Colors.orange,
hintColor: Colors.green
),
child: new TextField(
decoration: new InputDecoration(
hintText: "Enter your email",
labelText: "Email",
labelStyle: new TextStyle(color: const Color(0xFF424242)),
border: new UnderlineInputBorder(
borderSide: new BorderSide(
color: Colors.red
)
)
),
),
),
更新:
现在可以按照您 期望 的方式进行操作。
decoration: InputDecoration( enabledBorder: UnderlineInputBorder(
borderSide: BorderSide(color: theColor),
),
focusedBorder: UnderlineInputBorder(
borderSide: BorderSide(color: theColor),
),
border: UnderlineInputBorder(
borderSide: BorderSide(color: theColor),
),
)
以上是 如何更改textField下划线颜色? 的全部内容, 来源链接: utcz.com/qa/421855.html