flutter - 如何在Flutter中初始化文本字段

标签 flutter dart

我是新手,我试图创建一个从用户输入和减量开始的计数器,但是我无法从文本字段中获取整数输入,如何将用户输入初始化为整数,然后将其添加到整数变量

最佳答案

这很简单,我将向您展示一个您可以遵循的示例。

例:

class HomePage extends StatefulWidget {
  @override
  State<StatefulWidget> createState() {
    return new HomePageState();
  }
}

class HomePageState extends State<HomePage> {
  // creating and initilizing a counter variable 
 int _counter = 0;
TextEditingController _controller = TextEditingController();

  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      body:  new Column(
        mainAxisAlignment: MainAxisAlignment.center,
        children: <Widget>[
          new TextField(
            controller: _controller,
            decoration: new InputDecoration(labelText: "Enter your number"),
            keyboardType: TextInputType.number,
          ),
          FlatButton(
          onPressed:(){
           _counter = int.parse(_controller.text);
              },
             child: Text('Press Me!'),
            )
        ],
      ));

  }
}

首先,我创建了一个计数器并将其初始化为“0”,然后创建了一个 Controller ,该 Controller 将用于控制TextField。之后,我创建了一个TextField小部件并将_controller传递给它。我使用了 Controller ,因为我需要从TextField中获取数据,所以我们也是如此。我们通过_controller.text从_controller提取了数据,该数据返回一个字符串。尽管我们将计数器创建为整数,但无法将字符串传递给它。因此,我使用int.parse(_controller.text)将从_controller提取的数据更改为整数,然后将其传递给_counter变量。

注意:我已将keyboardType指定为TextInputType.number,因为我们正在处理您提到的数字。

关于flutter - 如何在Flutter中初始化文本字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59169269/

相关文章:

Flutter - 如何在 PageView 上进行延迟加载?

flutter - 如何测试原生调用Flutter的方法 channel ?

dart - 你能通过 Dart 编辑器将编译器标志传递给 dart2js

flutter - 如何使用 Flutter 实现这个特定的滚动动画?

flutter - Flutter中LinearPercentIndicator的不同progressColor

使用 Flutter 和 FCM 终止应用程序时,Android 设备未收到通知消息

android-studio - 在 android studio 中减少 Flutter 的控制台输出

android - 我正在使用 firebase_admob 在我的 flutter 应用程序中实现 abmob,但广告在发布版本 apk 中不起作用

flutter - Flutter-Material Design 2半透明Appbar

dart - Flutter中的Google搜索