文本域中的颤振显示值

  • 本文关键字:显示 文本 flutter dart
  • 更新时间 :
  • 英文 :


我希望标题足以理解我的问题是什么,我如何在TextField中显示按钮的值,当它被点击?提前感谢你帮我解决这个问题。

TextEditingController _controller;
void initState() {
_controller = new TextEditingController(text: '${formatCurrency.format(totalbet)}');
}
child: TextField(
controller: _controller,
textAlignVertical: TextAlignVertical.center,
textAlign: TextAlign.center,
style: TextStyle(
fontSize: globals.fontsize_28,
color: Colors.black,
fontWeight: FontWeight.bold,
fontFamily: "Nunito",
),
decoration: new InputDecoration(
contentPadding: EdgeInsets.zero,
border: new OutlineInputBorder(
borderRadius: const BorderRadius.all(
const Radius.circular(10.0),
),
),

)

按钮
child: FlatButton(
child: Container(
child: RichText(
text: TextSpan(
text: "500",
style: TextStyle(
fontSize: globals.fontsize_18,
color: Colors.white,
fontWeight: FontWeight.bold),
),
),
),
onPressed: () {
setState(() {
if (betbuttonstate[0] == false) {
betbuttonstate[0] = true;
totalbet = totalbet + betbuttonvalue[0];
totalmoney = totalmoney - betbuttonvalue[0];
} else {
betbuttonstate[0] = false;
totalbet = totalbet - betbuttonvalue[0];
totalmoney = totalmoney + betbuttonvalue[0];
}
});
},
),

按setState()像这样改变控制器_controller.text = newValue在按钮上的值。

onTap: (){
setState((){
_controller.text=newValue
});
}

在按钮的onPressed方法中试试

setState(() {
if (betbuttonstate[0] == false) {
betbuttonstate[0] = true;
totalbet = totalbet + betbuttonvalue[0];
totalmoney = totalmoney - betbuttonvalue[0];
} else {
betbuttonstate[0] = false;
totalbet = totalbet - betbuttonvalue[0];
totalmoney = totalmoney + betbuttonvalue[0];
}
_controller.text = '${formatCurrency.format(totalbet)}';

你的initState应该是这样的

@override
void initState() {
super.initState();
_controller =
new TextEditingController(text: '${formatCurrency.format(totalbet)}');
}

最新更新