xuelongqy / flutter_easy_refresh

A flutter widget that provides pull-down refresh and pull-up load.
https://xuelongqy.github.io/flutter_easy_refresh/
MIT License
3.83k stars 628 forks source link

在windows桌面端,nested_scroll_view.dart和tab_bar_view_page.dart的例子都出现异常 #805

Open FZY456 opened 5 months ago

FZY456 commented 5 months ago

extended_nested_scroll_view: ^6.2.1 easy_refresh: ^3.3.4

Flutter (Channel stable, 3.16.5, on Microsoft Windows [版本 10.0.19042.630], locale zh-CN)
    • Flutter version 3.16.5 on channel stable at D:\flutter\flutter
    • Upstream repository https://github.com/flutter/flutter/
    • FLUTTER_GIT_URL = https://github.com/flutter/flutter/
    • Framework revision 78666c8dc5 (7 weeks ago), 2023-12-19 16:14:14 -0800
    • Engine revision 3f3e560236
    • Dart version 3.2.3
    • DevTools version 2.28.4
    • Pub download mirror https://pub.flutter-io.cn
    • Flutter download mirror https://storage.flutter-io.cn

[√] Connected device (3 available)
    • Windows (desktop) • windows • windows-x64    • Microsoft Windows [版本 10.0.19042.630]

nested_scroll_view.dart的例子在手机上表现正常,但在windows桌面端,滚动鼠标的滚轮,报以下异常。

flutter: [<'Tab0'>] is visible
flutter: [<'Tab0'>] is visible
flutter: [<'Tab0'>] is visible
flutter: [<'Tab0'>] is visible
flutter: [<'Tab0'>] is visible
flutter: [<'Tab0'>] is visible
flutter: ══╡ EXCEPTION CAUGHT BY ANIMATION LIBRARY ╞═════════════════════════════════════════════════════════
flutter: The following assertion was thrown while notifying status listeners for AnimationController:
flutter: The provided ScrollController is currently attached to more than one ScrollPosition.
flutter: The Scrollbar requires a single ScrollPosition in order to be painted.
flutter: When the scrollbar is interactive, the associated ScrollController must only have one ScrollPosition
flutter: attached.The provided ScrollController must be unique to one ScrollView widget.
flutter: 
flutter: When the exception was thrown, this was the stack:
flutter: #0      RawScrollbarState._debugCheckHasValidScrollPosition.<anonymous closure> (package:flutter/src/widgets/scrollbar.dart:1492:9)
flutter: #1      RawScrollbarState._debugCheckHasValidScrollPosition (package:flutter/src/widgets/scrollbar.dart:1517:6)
flutter: #2      RawScrollbarState._validateInteractions (package:flutter/src/widgets/scrollbar.dart:1428:14)
flutter: #3      AnimationLocalStatusListenersMixin.notifyStatusListeners (package:flutter/src/animation/listener_helpers.dart:240:19)
flutter: #4      AnimationController._checkStatusChanged (package:flutter/src/animation/animation_controller.dart:815:7)
flutter: #5      AnimationController._startSimulation (package:flutter/src/animation/animation_controller.dart:749:5)
flutter: #6      AnimationController._animateToInternal (package:flutter/src/animation/animation_controller.dart:612:12)
flutter: #7      AnimationController.forward (package:flutter/src/animation/animation_controller.dart:461:12)
flutter: #8      RawScrollbarState._handleScrollNotification (package:flutter/src/widgets/scrollbar.dart:1822:37)
flutter: #9      _NotificationElement.onNotification (package:flutter/src/widgets/notification_listener.dart:130:38)
flutter: #10     _NotificationNode.dispatchNotification (package:flutter/src/widgets/framework.dart:3311:18)
flutter: #11     _NotificationNode.dispatchNotification (package:flutter/src/widgets/framework.dart:3314:13)
flutter: #12     Element.dispatchNotification (package:flutter/src/widgets/framework.dart:4933:24)
flutter: #13     Notification.dispatch (package:flutter/src/widgets/notification_listener.dart:60:13)
flutter: #14     ScrollActivity.dispatchScrollUpdateNotification (package:flutter/src/widgets/scroll_activity.dart:94:92)
flutter: #15     ScrollPosition.didUpdateScrollPositionBy (package:flutter/src/widgets/scroll_position.dart:1019:15)
flutter: #16     _NestedScrollPosition.applyClampedPointerSignalUpdate (package:extended_nested_scroll_view/src/extended_nested_scroll_view.dart:1517:5)
flutter: #17     _NestedScrollCoordinator.pointerScroll (package:extended_nested_scroll_view/src/extended_nested_scroll_view.dart:1141:22)
flutter: #18     _NestedScrollPosition.pointerScroll (package:extended_nested_scroll_view/src/extended_nested_scroll_view.dart:1619:24)
flutter: #19     ScrollableState._handlePointerScroll (package:flutter/src/widgets/scrollable.dart:935:16)
flutter: #20     PointerSignalResolver.resolve (package:flutter/src/gestures/pointer_signal_resolver.dart:101:32)
flutter: #21     GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:494:29)
flutter: #22     GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:468:22)
flutter: #23     RendererBinding.dispatchEvent (package:flutter/src/rendering/binding.dart:439:11)
flutter: #24     GestureBinding._handlePointerEventImmediately (package:flutter/src/gestures/binding.dart:413:7)
flutter: #25     GestureBinding.handlePointerEvent (package:flutter/src/gestures/binding.dart:376:5)
flutter: #26     GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:323:7)
flutter: #27     GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:292:9)
flutter: #28     _invoke1 (dart:ui/hooks.dart:328:13)
flutter: #29     PlatformDispatcher._dispatchPointerDataPacket (dart:ui/platform_dispatcher.dart:410:7)
flutter: #30     _dispatchPointerDataPacket (dart:ui/hooks.dart:262:31)
flutter: 
flutter: The AnimationController notifying status listeners was:
flutter:   AnimationController#21f2f(▶ 0.000)

tab_bar_view_page.dart的例子在手机上表现正常,但在windows桌面端,切换到第二个tab,滚动鼠标的滚轮,报以下异常。


flutter: [<'Tab0'>] is visible
flutter: [<'Tab0'>] is visible
flutter: [<'Tab0'>] is visible
flutter: [<'Tab0'>] is visible
flutter: [<'Tab0'>] is visible
flutter: [<'Tab0'>] is visible
flutter: ══╡ EXCEPTION CAUGHT BY ANIMATION LIBRARY ╞═════════════════════════════════════════════════════════
flutter: The following assertion was thrown while notifying status listeners for AnimationController:
flutter: The provided ScrollController is currently attached to more than one ScrollPosition.
flutter: The Scrollbar requires a single ScrollPosition in order to be painted.
flutter: When the scrollbar is interactive, the associated ScrollController must only have one ScrollPosition
flutter: attached.The provided ScrollController must be unique to one ScrollView widget.
flutter: 
flutter: When the exception was thrown, this was the stack:
flutter: #0      RawScrollbarState._debugCheckHasValidScrollPosition.<anonymous closure> (package:flutter/src/widgets/scrollbar.dart:1492:9)
flutter: #1      RawScrollbarState._debugCheckHasValidScrollPosition (package:flutter/src/widgets/scrollbar.dart:1517:6)
flutter: #2      RawScrollbarState._validateInteractions (package:flutter/src/widgets/scrollbar.dart:1428:14)
flutter: #3      AnimationLocalStatusListenersMixin.notifyStatusListeners (package:flutter/src/animation/listener_helpers.dart:240:19)
flutter: #4      AnimationController._checkStatusChanged (package:flutter/src/animation/animation_controller.dart:815:7)
flutter: #5      AnimationController._startSimulation (package:flutter/src/animation/animation_controller.dart:749:5)
flutter: #6      AnimationController._animateToInternal (package:flutter/src/animation/animation_controller.dart:612:12)
flutter: #7      AnimationController.reverse (package:flutter/src/animation/animation_controller.dart:495:12)
flutter: #8      RawScrollbarState._maybeStartFadeoutTimer.<anonymous closure> (package:flutter/src/widgets/scrollbar.dart:1625:37)
flutter: #12     _RawReceivePort._handleMessage (dart:isolate-patch/isolate_patch.dart:184:12)
flutter: (elided 3 frames from class _Timer and dart:async-patch)
flutter: 
flutter: The AnimationController notifying status listeners was:
flutter:   AnimationController#f4ed5(◀ 1.000)