如何使SwitchListTile图标可点击?

问题描述 投票:0回答:2

是否有可能使secondarySwitchListTile属性可用?在这种情况下,使用icon

SwitchListTile(
  title: const Text('Lights'),
  value: _lights,
  onChanged: (bool value) { setState(() { _lights = value; }); },
  secondary: const Icon(Icons.lightbulb_outline), //can this be selected?
)

理想情况下,我想使用Icon属性中的secondary而不是创建另一个小部件,以在用户选择它时显示消息。

目前,当选择图标或整个小部件时,切换开关。处理此操作的最佳方法是什么?

谢谢。

dart flutter
2个回答
1
投票

Icon包裹在InkWell内以处理水龙头:

      secondary: InkWell(
                onTap: () {
                  print("click light");
                },
                child: const Icon(Icons.lightbulb_outline),
              ),

更多信息:https://docs.flutter.io/flutter/material/InkWell-class.html


0
投票

您可以将Icon包装在IconButton中。

SwitchListTile(
  title: const Text('Lights'),
  value: _lights,
  onChanged: (value) => setState(() => _lights = value),
  secondary: IconButton(
    icon: Icon(Icons.lightbulb_outline),
    onPressed: () {},
  ),
)
© www.soinside.com 2019 - 2024. All rights reserved.