当前位置:   article > 正文

Flutter禁止及交互的两种方式_flutter textbutton 禁用

flutter textbutton 禁用

目录

1.把widget的手势设为null

2.使用IgnorePointer

总结


        在app开发的过程中,我们有时候会禁用某些按钮的点击状态:就比如说下图所示的登陆页面:只有当用户输入的邮箱密码都合法的时候,按钮才可以点击,否则,按钮将置灰,编程不可点击状态。我们来看一下Flutter禁用按钮状态的几种方式:

        图1.开发中的登陆页面


1.把widget的手势设为null

        当我们使用Gesture的时候,当按钮不可点击的时候,我们将onTap,onLongTap等响应事件设置为null.类似下面的代码:

  1. GestureDetector(onTap:canClick?null: (){
  2. },child: Container(
  3. padding: const EdgeInsets.all(10),
  4. decoration: BoxDecoration(
  5. color: currentPassword.isNotEmpty &&currentEmail.isNotEmpty?Colors.blue:Colors.black12,
  6. borderRadius: const BorderRadius.all(Radius.circular(5))
  7. ),
  8. child: const Text('登陆'))),

2.使用IgnorePointer

        刚开始的时候,我是通过上一种方式来实现的,这两天在查看Flutter的API的时候,发现Flutter中有个widget是专门用来禁止用户交互的。就是这个IgnorePointer.我们可以把要禁止交互的组件用IgnorePointer包裹一下,当按钮不可点击的时候,设置ignoring的只为true.

        这里需要注意的是,当设置ignoring为true时,被IgnorePointer包裹的widget以及其子控件都是不会响应事件的。


总结

        这是我知道的两种禁止点击事件的方法,两种方式都可以实现禁止点击事件的效果,可以根据需要来选择,如果你有其他的方法,可以给笔者留言,大家一起学习,一起进步

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/257389?site
推荐阅读
相关标签
  

闽ICP备14008679号