【问题标题】:Flutter clicking on OnTap not working (Website)颤振点击 OnTap 不起作用(网站)
【发布时间】:2022-08-09 21:39:28
【问题描述】:

我正在尝试使用 onTap 在按下时更改容器的外观,但是我遇到的问题是现在单击它什么也没做。

以下是我的代码: 主页:

child: SubscribeButton(
                          onTap: buttonPressed,
                          isButtonPressed: isButtonPressed,
                        ),

方法:

bool isButtonPressed = false;

  void buttonPressed() {
    setState(() {
      if (isButtonPressed = false) {
        isButtonPressed = true;
      } else if (isButtonPressed = true) {
        isButtonPressed = false;
      }
    });
  }

按钮:

  Class SubscribeButton extends StatelessWidget {
  final onTap;
  bool isButtonPressed;

  SubscribeButton({this.onTap, required this.isButtonPressed});

     Widget build(BuildContext context) {
        final themeProvider = Provider.of<ThemeProvider>(context);
        return GestureDetector(
          onTap: onTap,
          child: AnimatedContainer(
            duration: Duration(milliseconds: 200),
            child: Text(
              isButtonPressed ? \"Pressed\" : \"Not Pressed\",
              style: isButtonPressed
                  ? Theme.of(context).textTheme.bodyMedium
                  : Theme.of(context).textTheme.headlineMedium,
            ), ...

如果我手动更改布尔值,它将正确显示文本,但是单击按钮本身什么也不做。我检查了重叠和其他东西但是没有发现任何东西。

感谢您的帮助!

    标签: flutter dart


    【解决方案1】:

    好老= vs ==问题:

    // Change the next line to "if (isButtonPressed == false)"
    if (isButtonPressed = false) {
            isButtonPressed = true;
    // Similar issue
          } else if (isButtonPressed = true) {
            isButtonPressed = false;
          }
    

    我没有发现任何其他问题,但也许有。请先解决此问题,然后重试。

    【讨论】:

    • 天哪,我觉得自己很愚蠢,有时你只需要第二双眼睛。感谢您发现这一点!
    • 这就是为什么他们推荐结对编程哈哈
    猜你喜欢
    • 2020-12-10
    • 2022-01-23
    • 1970-01-01
    • 2021-11-18
    • 2018-11-17
    • 2021-02-20
    • 2021-04-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多