更改焦点 Flutter 上的后缀图标颜色
change suffixIcon color on focus Flutter
我正尝试在 flutter 中登录 ui。我在 TextFormField
有一个 suffixicon
装饰。我需要设置它的颜色,然后在 TextFormField
处于 聚焦状态
时更改它
我尝试给图标上色,但它保持不变,
我也尝试过主题,但因为我是新手,所以我迷路了。
Color suffixColor = Colors.grey;
Focus(
onFocusChange: (hasFocus) {
setState(() {
(hasFocus)
? suffixColor = Colors.red
: suffixColor = Colors.grey;
});
},
child: TextFormField(
decoration: InputDecoration(
suffixIcon: Icon(
Icons.monetization_on,
color: suffixColor,
),
),
),
使用 TextFormField 的焦点 属性 来实现您的结果
FocusNode focus = FocusNode();
@override
Widget build(BuildContext context) {
return TextFormField(
focusNode: focus,
onTap: () {
FocusScope.of(context).requestFocus(focus);
},
keyboardType: TextInputType.emailAddress,
decoration: InputDecoration(
suffixIcon: Icon(
Icons.search,
color: focus.hasFocus ? Colors.red : Colors.green,
),
),
);
}
我正尝试在 flutter 中登录 ui。我在 TextFormField
有一个 suffixicon
装饰。我需要设置它的颜色,然后在 TextFormField
处于 聚焦状态
我尝试给图标上色,但它保持不变, 我也尝试过主题,但因为我是新手,所以我迷路了。
Color suffixColor = Colors.grey;
Focus(
onFocusChange: (hasFocus) {
setState(() {
(hasFocus)
? suffixColor = Colors.red
: suffixColor = Colors.grey;
});
},
child: TextFormField(
decoration: InputDecoration(
suffixIcon: Icon(
Icons.monetization_on,
color: suffixColor,
),
),
),
使用 TextFormField 的焦点 属性 来实现您的结果
FocusNode focus = FocusNode();
@override
Widget build(BuildContext context) {
return TextFormField(
focusNode: focus,
onTap: () {
FocusScope.of(context).requestFocus(focus);
},
keyboardType: TextInputType.emailAddress,
decoration: InputDecoration(
suffixIcon: Icon(
Icons.search,
color: focus.hasFocus ? Colors.red : Colors.green,
),
),
);
}