颤振加法计算器问题中具有刷新答案的问题



我正在做一个小的加法计算器在扑动,但不知道如何获得文本显示的答案刷新。我目前是一个初学者试图学习扑动,并希望这样做作为一个很好的小项目,以扩大我的知识。我至少知道它必须在有状态小部件中。下面是我当前的代码:

import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
visualDensity: VisualDensity.adaptivePlatformDensity,
),
home: MyHomePage());
}
}
class MyHomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text("Calculator"),
),
body: TextFields(),
);
}
}
class TextFields extends StatefulWidget {
@override
_TextFieldsState createState() => _TextFieldsState();
}
class _TextFieldsState extends State<TextFields> {
int num1 = 0;
int num2 = 0;
void assignNum1(value) {
num1 = int.parse(value);
}
void assignNum2(value) {
num2 = int.parse(value);
}
String ans() {
return (num1 + num2).toString();
}
@override
Widget build(BuildContext context) {
return Column(
children: <Widget>[
TextField(
decoration: InputDecoration(
labelText: "Enter Your 1st number",
),
onChanged: (value) => assignNum1(value),
),
TextField(
decoration: InputDecoration(
labelText: "Enter Your 2nd number",
),
onChanged: (value) => assignNum2(value),
),
Text(ans())
]
);
}
}

你需要创建一个setState(),这是一个例子:

TextField(
decoration: InputDecoration(
labelText: "Enter Your 1st number",
),
onChanged: setState(() {
(value) => assignNum1(value)
}),
),

最新更新