Flutter 如何禁用颤振开关

Flutter 如何禁用颤振开关,flutter,dart,layout,flutter-layout,flutter-dependencies,Flutter,Dart,Layout,Flutter Layout,Flutter Dependencies,在我的帮助屏幕中,我有这个开关,它的目的是什么都不做,只是按原样显示 但我现在遇到的问题是,即使它不起任何作用,用户也可以拖动开关,因此我试图找出如何禁用它,以便没有人可以拖动开关按钮 return Container( child: Card( color: Theme.of(context).primaryColor, margin: EdgeInsets.only(bottom: 30, top: 10), child:

在我的帮助屏幕中,我有这个开关,它的目的是什么都不做,只是按原样显示

但我现在遇到的问题是,即使它不起任何作用,用户也可以拖动开关,因此我试图找出如何禁用它,以便没有人可以拖动开关按钮

    return Container(
      child: Card(
        color: Theme.of(context).primaryColor,
        margin: EdgeInsets.only(bottom: 30, top: 10),
        child: ListTile(
          title: Row(
            mainAxisAlignment: MainAxisAlignment.spaceBetween,
            children: <Widget>[
              Text("Dark Theme",
                  style: TextStyle(color: Theme.of(context).accentColor)),
              Switch(
                  value: true,
                  onChanged: (value) {},
                  activeColor: Theme.of(context).accentColor),
              Text("Light Theme", style: TextStyle())
            ],
          ),
        ),
      ),
    );
  }
返回容器(
孩子:卡片(
颜色:主题。背景。原色,
页边距:仅限边集(底部:30,顶部:10),
孩子:ListTile(
标题:世界其他地区(
mainAxisAlignment:mainAxisAlignment.spaceBetween,
儿童:[
文本(“黑色主题”,
样式:TextStyle(颜色:Theme.of(context.accentColor)),
开关(
价值观:正确,
一旦更改:(值){},
activeColor:Theme.of(context.accentColor),
文本(“灯光主题”,样式:TextStyle())
],
),
),
),
);
}


要禁用
开关
,请将其
onChanged
方法编辑为空,如下所示

Switch(
  onChanged: null,
  value: true,
  inactiveThumbColor: Colors.tealAccent,
  inactiveTrackColor: Colors.tealAccent.withOpacity(0.5),
  // ...
),

如果要手动设置静态开关,请考虑使用BaseBooPosik。它不会改变交换机的外观,也不会禁用它。


吸收体指针只是阻止用户与元素交互

ohh.。谢谢,它被禁用了,但结果不是我想象的那样。开关已禁用,但颜色不再应用于开关,您知道如何应用浅蓝色(如图中所示)并使开关仍处于禁用状态吗?请查看我的编辑您还可以使用
Theme.of(context).accentColor
Theme.of(context).accentColor.withOpacity(0.5)
例如,哦,好吧……但我想我不允许同时使用inactiveThumbColor和inactiveTrackColor,因为我遇到了错误。(附图)你知道原因是什么吗。谢谢你的工作!。。非常感谢你对我的两个问题的帮助。谢谢