【问题标题】:How to properly enable/disable Flutter's Button如何正确启用/禁用 Flutter 的 Button
【发布时间】:2018-12-11 02:49:07
【问题描述】:

经研究,当 onPressed 为 null 时,Flutter 的 Button 会自动禁用。但是,由于我需要的测试功能,我不得不放置一个箭头函数 () => ,这似乎不会触发 onPressed 实际上为 null,而是将 null 作为值返回。因此,当 textField 为空时,当前按钮什么都不做(null)。如果 textField 为空,我的目标是完全禁用它(灰色)。

onPressed: () => (_textController.text.isNotEmpty) ? _addNewPair() : null,

showDialog(
  context: this.context,
  builder: (BuildContext context) {
    return AlertDialog(
      title: Text('Add a custom word'),
      content: _renderForm(),
      actions: <Widget>[
        FlatButton(
          child: Text('ADD'),
          onPressed: () => (_textController.text.isNotEmpty) ? _addNewPair() : null,
        ),
      ],
    );
  }

【问题讨论】:

    标签: dart flutter


    【解决方案1】:

    先设置条件,如果文本为空,您的按钮将被禁用。

    onPressed: (_textController.text.isNotEmpty) ? () =>  _addNewPair() : null,
    

    【讨论】:

    • 谢谢,现在按预期工作!现在开始修复我如何处理 _textControll.text 状态,因为即使在编写 textField 时它似乎也不会更新/呈现更改。
    • 那是另一个问题,也许你可以用你的代码打开一个新的
    猜你喜欢
    • 2022-08-20
    • 1970-01-01
    • 2020-10-04
    • 1970-01-01
    • 2020-02-26
    • 2021-10-28
    • 2022-12-18
    • 2014-05-27
    • 2018-09-04
    相关资源
    最近更新 更多