LoginSignup
1
0

More than 3 years have passed since last update.

scrollable_positioned_list でエラーが発生し ItemPositionsListener.itemPositions.value が取得できない

Last updated at Posted at 2020-11-15
flutter: ══╡ EXCEPTION CAUGHT BY SCHEDULER LIBRARY ╞═════════════════════════════════════════════════════════
flutter: The following UnsupportedError was thrown during a scheduler callback:
flutter: Unsupported operation: Infinity or NaN toInt
flutter: 
flutter: When the exception was thrown, this was the stack:
flutter: #0      double.toInt (dart:core-patch/double.dart:192:36)
flutter: #1      double.round (dart:core-patch/double.dart:160:34)
flutter: #2      _PositionedListState._schedulePositionNotificationUpdate.<anonymous closure> (package:scrollable_positioned_list/src/positioned_list.dart:324:45)
flutter: #3      SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1119:15)
flutter: #4      SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1065:9)
flutter: #5      SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:973:5)
flutter: #9      _invoke (dart:ui/hooks.dart:157:10)
flutter: #10     PlatformDispatcher._drawFrame (dart:ui/platform_dispatcher.dart:253:5)
flutter: #11     _drawFrame (dart:ui/hooks.dart:120:31)
flutter: (elided 3 frames from dart:async)
flutter: ════════════════════════════════════════════════════════════════════════════════════════════════════

このように「Unsupported operation: Infinity or NaN toInt」が発生し現在位置が取得できない。
このバグは 2020/11/15 現在最新の scrollable_positioned_list 0.1.8 でも修正されていない。
対応方法としては、
https://github.com/google/flutter.widgets/issues/173#issuecomment-704673432
にかかれているように修正パッチを当ててくれているバージョンの scrollable_positioned_list を用いること。
本家への PR も出してくれているようで、https://github.com/google/flutter.widgets/pull/180 がマージされ次第修正されると思われる。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0