gpt4 book ai didi

flutter - 当按钮的highlightColor更改时,是否可以更改FlatButton内部的文本颜色?

转载 作者:行者123 更新时间:2023-12-03 04:36:46 25 4
gpt4 key购买 nike

当FlatButtons突出显示颜色变化时,我想更改FlatButton内的文本小部件文本的颜色。当用户长时间按下按钮时,FlatButton的Higlight颜色会更改。这是我拥有的按钮的示例代码:

 class DefaultButton extends StatelessWidget {
const DefaultButton({
Key key,
this.text,
this.press,
this.buttonColor = primaryColor,
}) : super(key: key);
final String text;
final Function press;
final Color buttonColor;


@override
Widget build(BuildContext context) {
return SizedBox(
width: double.infinity,
height: 50,
child: FlatButton(
shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(40)),
highlightColor: Colors.yellow,
color: buttonColor,
onPressed: press,
child: Text(
text,
style: TextStyle(
fontFamily: primaryFontFamily,
fontWeight: FontWeight.w400,
fontSize: 20,
color: primaryColor,
),
),

),
);
}
}
实现此目标的最佳方法是什么?
谢谢!

最佳答案

不知道您是如何正确使用这个FlatButton的,正如Muhammad正确指出的那样,但是最直接的解决方案是使用 bool(boolean) 值

FlatButton(
color: !pressed ? Colors.blue : Colors.amber,
onPressed: null,
onLongPress: () {
setState(() {
pressed = !pressed;
});
},
child: Text(
'text',
textAlign: TextAlign.left,
style: TextStyle(
color: pressed ? Colors.blue : Colors.amber,
fontWeight: FontWeight.w600,
fontSize: 14.0,
height: 1.2,
),
),
),
然后根据需要管理状态,Bloc,StreamBuilder选择毒药

关于flutter - 当按钮的highlightColor更改时,是否可以更改FlatButton内部的文本颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63962840/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com