【发布时间】:2017-11-17 13:01:17
【问题描述】:
我有一个使用 RefreshIndicator 的布局。它的孩子是CustomScrollView。但是,当调用 onRefresh 处理程序时,它会引发异常
[ERROR:../../lib/tonic/logging/dart_error.cc(16)] Unhandled exception:
E/flutter (21060): NoSuchMethodError: The method 'call' was called on null.
E/flutter (21060): Receiver: null
E/flutter (21060): Tried calling: call()
E/flutter (21060): #0 Object._noSuchMethod (dart:core-patch/object_patch.dart:43)
E/flutter (21060): #1 Object.noSuchMethod (dart:core-patch/object_patch.dart:47)
E/flutter (21060): #2 new Future.sync (dart:async/future.dart:222)
E/flutter (21060): #3 MyHomePageState.handleRefresh (file:///home/swav/Git/flutter/status-app/lib/state/state.dart:49)
E/flutter (21060): #4 RefreshIndicatorState._show.<anonymous closure> (package:flutter/src/material/refresh_indicator.dart:319)
E/flutter (21060): #5 _RootZone.runUnary (dart:async/zone.dart:1371)
E/flutter (21060): #6 _FutureListener.handleValue (dart:async/future_impl.dart:129)
E/flutter (21060): #7 _Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:636)
E/flutter (21060): #8 _Future._propagateToListeners (dart:async/future_impl.dart:665)
E/flutter (21060): #9 _Future._completeWithValue (dart:async/future_impl.dart:478)
E/flutter (21060): #10 _Future._asyncComplete.<anonymous closure> (dart:async/future_impl.dart:510)
E/flutter (21060): #11 _microtaskLoop (dart:async/schedule_microtask.dart:41)
E/flutter (21060): #12 _startMicrotaskLoop (dart:async/schedule_microtask.dart:50)
有趣的是 onRefresh 成功完成。
此外,当 RefreshIndicator 的直接子代是 Flex 时,它不会抱怨。
【问题讨论】:
-
你能给我们看看代码吗?