一尘不染

flutter计算方法

flutter

我正在尝试执行重方法compute()
我尝试过这样。后loop执行,Text窗口更新而result返回0按下按钮后,差不多吧。
有人知道我在想什么吗?

 int _counter;

  static int loop(int val) {
    int count = 0;
    for (int i = 1; i <= val; i++) {
      count += i;
    }
    return count;
  }

  Future<void> _onPressed() async {
    int result = await compute(loop, 1000000000000000000);
    setState(() {
      _counter = result;
    });
  }

阅读 431

收藏
2020-08-13

共1个答案

一尘不染

根据https://docs.flutter.io/flutter/foundation/compute.html

callback参数必须是顶级函数,而不是类的闭包,实例或静态方法。

请删除static关键字,它应该可以正常工作

2020-08-13