美文网首页
Flutter Dart Callback转同步

Flutter Dart Callback转同步

作者: 旺仔_100 | 来源:发表于2022-01-10 21:04 被阅读0次
怎么将一个Callback回调转化成Future同步方法(Callback to Future),可以配套async / await去使用呢?
class ViewUtil {
  ///界面初始化完成
  static Future<Void> initFinish() async {
    Completer<Void> completer = Completer();

    WidgetsBinding.instance.addPostFrameCallback((timeStamp) {
      completer.complete();
    });

    return completer.future;
  }
}

void _init() async {
    var s = await ViewUtil.initFinish();
    print(s);
}

说明

Future和Completer的泛型最好保持一致
例如都是String的话,complete()方法里面就可以加上相应的内容,然后await接受这个方法时候,就能拿到complete()方法里面输入的值了

相关文章

网友评论

      本文标题:Flutter Dart Callback转同步

      本文链接:https://www.haomeiwen.com/subject/tsrvcrtx.html