小编典典

我想你可能要出台一些辅助功能,以build您的按钮

,以及与一些属性键关机的沿有状态的部件。

使用StatefulWidget / State并创建一个变量来保存您的条件(例如isButtonDisabled)

最初将其设置为true(如果您要这样做)

呈现按钮时,请勿将onPressed值直接设置为null某个或某些函数onPressed: () {}而是使用三元或辅助函数有条件地设置它(以下示例)

isButtonDisabled作为此条件的一部分进行检查,并返回一个null或某些函数。当按下按钮时(或每当您要禁用按钮时),使用setState(() => isButtonDisabled = true)来翻转条件变量。

Flutter将build()使用新状态再次调用该方法,并且按钮将由null按下处理程序呈现并被禁用。

这是使用Flutter计数器项目的更多背景信息。

class MyHomePage extends StatefulWidget {

@override

_MyHomePageState createState() => new _MyHomePageState();

}

class _MyHomePageState extends State {

int _counter = 0;

bool _isButtonDisabled;

@override

void initState() {

_isButtonDisabled = false;

}

void _incrementCounter() {

setState(() {

_isButtonDisabled = true;

_counter++;

});

}

@override

Widget build(BuildContext context) {

return new Scaffold(

appBar: new AppBar(

title: new Text("The App"),

),

body: new Center(

child: new Column(

mainAxisAlignment: MainAxisAlignment.center,

children: [

new Text(

'You have pushed the button this many times:',

),

new Text(

'$_counter',

style: Theme.of(context).textTheme.display1,

),

_buildCounterButton(),

],

),

),

);

}

Widget _buildCounterButton() {

return new RaisedButton(

child: new Text(

_isButtonDisabled ? "Hold on..." : "Increment"

),

onPressed: _isButtonDisabled ? null : _incrementCounter,

);

}

}

在此示例中,我使用内联三元有条件地设置Text and onPressed,但是将其提取到

函数中可能更合适(您也可以使用相同的方法来更改按钮的文本):

Widget _buildCounterButton() {

return new RaisedButton(

child: new Text(

_isButtonDisabled ? "Hold on..." : "Increment"

),

onPressed: _counterButtonPress(),

);

}

Function _counterButtonPress() {

if (_isButtonDisabled) {

return null;

} else {

return () {

// do anything else you may want to here

_incrementCounter();

};

}

}

2020-08-13

flutter的按钮如何变为不可选中_如何在Flutter中禁用按钮?相关推荐

  1. html按钮怎么修改大小设置吗,如何在HTML中编辑按钮大小?

    如何在HTML中编辑按钮大小?使用HTML设计按钮之类的东西不是首选的方式.(1999年我开始建网站的时候,我们就是这么做的,但是现在有更好的方法了.) 我假定您不熟悉CSS以及如何将CSS文件导入到 ...

  2. txt文本变为粗体_如何在PHP中使文本变为粗体?

    txt文本变为粗体 Sometimes we might want to display text with style. That it's font, color, make it bold, i ...

  3. android 控件发光_如何在android中的按钮周围制作动画/常量发光效果?

    的按钮有一个背景绘制的图像,我只是想拥有它周围的发光效果,使它有点与音乐播放 我已经搜查各地的多个线程共鸣,他们要么只是一个ImageView的,或在压制,或位图,所以不一定是我寻求 这里是我的按钮X ...

  4. python 获取文本框内容_如何在python中单击按钮时获取文本框中的文本?

    我可以让您的代码在单击按钮时显示文本框中的文本: 这就是你要达到的目的吗?您没有提到是否出现错误,但我确实发现您的代码存在两个问题:Button.py脚本中似乎存在一些缩进问题.在 对于changeT ...

  5. 笔记本禁用键盘命令符_如何在Windows中禁用命令提示符和“运行”程序

    笔记本禁用键盘命令符 The Command Prompt and the Run program are pretty powerful tools in the Windows world. If ...

  6. ubuntu 麦克风录音_如何在Ubuntu中禁用麦克风和网络摄像机 | MOS86

    这几天每个人都有一台笔记本电脑.这意味着每个人都有一个内置麦克风的网络摄像头.在很大程度上,这是一件伟大的事情,因为这意味着越来越多的人现在可以在线参与视频或音频聊天. 这样一来,这个技术变得越来越好 ...

  7. qbuttongroup如何都不选中_将单选按钮和多选按钮分组的类QButtonGroup

    QButtonGroup 的继承图: QButtonGroup 的描述: 它是个抽象的按钮容器,可以将多个按钮划分为一组 之所以抽象是指它不具备可视化的效果(因为它继承自QObject ,一般继承自Q ...

  8. figma设计_如何在Figma中构建设计入门套件(第1部分)

    figma设计 Figma教程 (Figma Tutorial) Do you like staring at a blank canvas every time you start a new pr ...

  9. 在excel日期比对大小_如何在Excel中防止分组日期

    在excel日期比对大小 As a teenager, group dates can be fun. If you have strict parents, that might be the on ...

最新文章

  1. 动态更新 AGS Cache
  2. 再也不买仙剑正版盘了
  3. java 怎么打印变量
  4. 初试poi HssfWorkBook导出excel
  5. 【转】Oracle Outline使用方法及注意事项
  6. rdp协议打开 windows_ubuntu客户端使用RDP协议连接windows服务器
  7. Android Studio Process 'command ...\aapt.exe'' finished with non-zero exit value 1
  8. 方舟服务器维护驯龙,方舟生存进化新手图文攻略 最详细的驯龙教程方法
  9. 项目疑难杂症记录(三):EditText获取不到焦点了?
  10. 曾遭周鸿祎全网封杀的 360 猛将 :草根打工到 36 岁身家上亿的逆袭!
  11. Echarts数据可视化全解
  12. 洛谷 P1640 [SCOI2010]连续攻击游戏(二分图匹配)
  13. 【红黑树】都这样讲了,不会还有人不会红黑树吧
  14. 多重积分MULTIPLE INTEGRALS
  15. 如何快速一次性卸载所有python包(第三方库)呢?
  16. Mavenir被以色列Partner选为下一代网络
  17. Excel格式刷使用
  18. 服务器配置记录(五)GNS3虚拟机SSH配置
  19. Mac 系统下Python多版本管理
  20. 灵飞经4 西城八部 第十八章 暗通款曲(三)

热门文章

  1. HTML+CSS+JS实现 ❤️酷炫3D瀑布流动画特效❤️
  2. c语言文件读写_学生信息管理系统(C语言\单向链表\文件读写)
  3. java 多线程同步_详解Java多线程编程中的线程同步方法
  4. 连接linux桌面命令,连接Linux远程桌面的四个方法
  5. mysql取消主键_mysql如何删除主键?
  6. Java连接数据库所遇到的坑,连接数据库,遇到一个很奇怪的问题……
  7. 【OpenCV 例程200篇】25. 图像的平移
  8. uwsgi怎么通过浏览器访问某个脚本_4个Shell小技巧帮你提高机器学习效率:写好脚本,事半功倍...
  9. java 搜索引擎 关键词高亮_和我一起打造个简单搜索之SpringDataElasticSearch关键词高亮(示例代码)...
  10. mysql初始化脚本建表_mysql新建表修改表sql脚本