best-flutter / flutter_dropdown_menu

A dropdown menu for Flutter.
MIT License
264 stars 71 forks source link

_DropdownMenuState#f9cfe(tickers: tracking 1 ticker) was disposed with an active Ticker #15

Open ryanhz opened 5 years ago

ryanhz commented 5 years ago

flutter: ══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞════════════════════════ The following assertion was thrown while finalizing the widget tree: _DropdownMenuStatef9cfe(tickers: tracking 1 ticker) was disposed with an active Ticker. _DropdownMenuState created a Ticker via its TickerProviderStateMixin, but at the time dispose() was called on the mixin, that Ticker was still active. All Tickers must be disposed before calling super.dispose(). Tickers used by AnimationControllers should be disposed by calling dispose() on the AnimationController itself. Otherwise, the ticker will leak. The offending ticker was: _WidgetTicker(created by _DropdownMenuStatef9cfe(lifecycle state: created, tickers: tracking 3 tickers)) The stack trace when the _WidgetTicker was actually created was: 0 new Ticker. (package:flutter/src/scheduler/ticker.dart:64:40) 1 new Ticker (package:flutter/src/scheduler/ticker.dart:66:6) 2 new _WidgetTicker (package:flutter/src/widgets/ticker_provider.dart:225:80) 3 __DropdownMenuState&DropdownState&TickerProviderStateMixin.createTicker (package:flutter/src/widgets/ticker_provider.dart:161:34) 4 new AnimationController (package:flutter/src/animation/animation_controller.dart:245:21) 5 _DropdownMenuState.initState (package:dropdown_menu/_src/dropdown_menu.dart:132:27) 6 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4033:58) 7 ComponentElement.mount (package:flutter/src/widgets/framework.dart:3902:5) 8 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3084:14) 9 Element.updateChild (package:flutter/src/widgets/framework.dart:2887:12) 10 RenderObjectElement.updateChildren (package:flutter/src/widgets/framework.dart:4875:32) 11 MultiChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5208:17) 12 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 13 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3935:16) 14 Element.rebuild (package:flutter/src/widgets/framework.dart:3721:5) 15 ProxyElement.update (package:flutter/src/widgets/framework.dart:4219:5) 16 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 17 RenderObjectElement.updateChildren (package:flutter/src/widgets/framework.dart:4817:32) 18 MultiChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5208:17) 19 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 20 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3935:16) 21 Element.rebuild (package:flutter/src/widgets/framework.dart:3721:5) 22 ProxyElement.update (package:flutter/src/widgets/framework.dart:4219:5) 23 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 24 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3935:16) 25 Element.rebuild (package:flutter/src/widgets/framework.dart:3721:5) 26 StatefulElement.update (package:flutter/src/widgets/framework.dart:4085:5) 27 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 28 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3935:16) 29 Element.rebuild (package:flutter/src/widgets/framework.dart:3721:5) 30 ProxyElement.update (package:flutter/src/widgets/framework.dart:4219:5) 31 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 32 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3935:16) 33 Element.rebuild (package:flutter/src/widgets/framework.dart:3721:5) 34 ProxyElement.update (package:flutter/src/widgets/framework.dart:4219:5) 35 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 36 RenderObjectElement.updateChildren (package:flutter/src/widgets/framework.dart:4817:32) 37 MultiChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5208:17) 38 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 39 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3935:16) 40 Element.rebuild (package:flutter/src/widgets/framework.dart:3721:5) 41 StatefulElement.update (package:flutter/src/widgets/framework.dart:4085:5) 42 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 43 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3935:16) 44 Element.rebuild (package:flutter/src/widgets/framework.dart:3721:5) 45 ProxyElement.update (package:flutter/src/widgets/framework.dart:4219:5) 46 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 47 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3935:16) 48 Element.rebuild (package:flutter/src/widgets/framework.dart:3721:5) 49 StatefulElement.update (package:flutter/src/widgets/framework.dart:4085:5) 50 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 51 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5099:14) 52 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 53 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3935:16) 54 Element.rebuild (package:flutter/src/widgets/framework.dart:3721:5) 55 StatelessElement.update (package:flutter/src/widgets/framework.dart:3981:5) 56 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 57 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:5099:14) 58 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 59 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3935:16) 60 Element.rebuild (package:flutter/src/widgets/framework.dart:3721:5) 61 StatefulElement.update (package:flutter/src/widgets/framework.dart:4085:5) 62 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 63 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3935:16) 64 Element.rebuild (package:flutter/src/widgets/framework.dart:3721:5) 65 StatefulElement.update (package:flutter/src/widgets/framework.dart:4085:5) 66 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 67 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3935:16) 68 Element.rebuild (package:flutter/src/widgets/framework.dart:3721:5) 69 ProxyElement.update (package:flutter/src/widgets/framework.dart:4219:5) 70 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 71 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3935:16) 72 Element.rebuild (package:flutter/src/widgets/framework.dart:3721:5) 73 ProxyElement.update (package:flutter/src/widgets/framework.dart:4219:5) 74 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 75 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3935:16) 76 Element.rebuild (package:flutter/src/widgets/framework.dart:3721:5) 77 StatefulElement.update (package:flutter/src/widgets/framework.dart:4085:5) 78 Element.updateChild (package:flutter/src/widgets/framework.dart:2876:15) 79 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3935:16) 80 Element.rebuild (package:flutter/src/widgets/framework.dart:3721:5) 81 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2340:33) 82 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding&WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:700:20) 83 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:285:5) 84 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1016:15) 85 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:958:9) 86 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:874:5) 90 _invoke (dart:ui/hooks.dart:236:10) 91 _drawFrame (dart:ui/hooks.dart:194:3) (elided 3 frames from package dart:async)

When the exception was thrown, this was the stack: 0 __DropdownMenuState&DropdownState&TickerProviderStateMixin.dispose. (package:flutter/src/widgets/ticker_provider.dart:178:13) 1 __DropdownMenuState&DropdownState&TickerProviderStateMixin.dispose (package:flutter/src/widgets/ticker_provider.dart:191:6) 2 _DropdownMenuState.dispose (package:dropdown_menu/_src/dropdown_menu.dart:147:11) 3 StatefulElement.unmount (package:flutter/src/widgets/framework.dart:4107:12) 4 _InactiveElements._unmount (package:flutter/src/widgets/framework.dart:1737:13) 5 ListIterable.forEach (dart:_internal/iterable.dart:39:13) 6 _InactiveElements._unmountAll (package:flutter/src/widgets/framework.dart:1746:25) 7 BuildOwner.finalizeTree. (package:flutter/src/widgets/framework.dart:2426:27) 8 BuildOwner.lockState (package:flutter/src/widgets/framework.dart:2258:15) 9 BuildOwner.finalizeTree (package:flutter/src/widgets/framework.dart:2425:7) 10 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding&WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:702:18) 11 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:285:5) 12 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1016:15) 13 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:958:9) 14 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:874:5) 18 _invoke (dart:ui/hooks.dart:236:10) 19 _drawFrame (dart:ui/hooks.dart:194:3) (elided 3 frames from package dart:async)

basharalbashier commented 3 years ago

has anyone got a way out?

even trying _controller.dispose(); everywhere never work!