gpt4 book ai didi

android - 如何检查文本字段是否包含 flutter 的字符串?

转载 作者:行者123 更新时间:2023-12-05 00:18:46 27 4
gpt4 key购买 nike

我有这个用 Flutter 制作的简单计算器,我的问题是我想检查用户是否在文本字段中输入了一个字符串,然后(如果为真)显示“必须输入有效数字”。我怎样才能做到这一点?我是新手,所以有人可以帮助我吗?
我知道使用键盘类型作为数字,但这不是我的任务。我也知道文本字段验证,但这不是我想要的,我需要使用文本小部件显示错误消息。

These are my variables and controller

final TextEditingController fController = new TextEditingController();
final TextEditingController sController = new TextEditingController();

String errorMessage = "None";
String result = '0';
double num1, num2;

This is my addNum

void addNum() {
setState(() {
num1 = double.parse(fController.text);
num2 = double.parse(sController.text);
result = (num1 + num2).toString();
});
}

This is the onPressed

onPressed: () {
addNum();
if (result.contains('a') || result.contains('a')) {
setState(() {
errorMessage = "Invalid";
});
}
},

This is where I display the text

Text(
"Output: ${result.toString()}\n"
"Error: ${errorMessage.toString()}",
),
我收到一个错误“Invalid Double a”。

最佳答案

使用 https://api.flutter.dev/flutter/widgets/TextEditingController-class.html ,
用法示例:

TextEditingController stringController = new TextEditingController();
String errorMessage;

@override
Widget build(BuildContext context) {
return Scaffold(
body: Column(
children: [
TextFormField(
controller: stringController,
),
FlatButton(
onPressed: () {
String a = stringController.text.trim();

if(a.isEmpty) {
//Put some code here for if string a is empty.
setState(() {
errorMessage = "Your error message";
});
}
}
),
Text(
errorMessage,
),
]
),
),
}
尝试更改文本输出
Text(
"Output: " + result +
"\nError: " + errorMessage,
),

关于android - 如何检查文本字段是否包含 flutter 的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66557317/

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