A Flutter widget that scrolls text infinitely

Related tags

Widgets marquee
Overview

marquee

A Flutter widget that scrolls text infinitely. Provides many customizations including custom scroll directions, durations, curves as well as pauses after every round.

Appreciate the widget? Show some ❤️ and star the repo to support the project.

Usage

This is a minimalistic example:

Marquee(
  text: 'There once was a boy who told this story about a boy: "',
)

And here's a piece of code that makes full use of the marquee's customizability:

Marquee(
  text: 'Some sample text that takes some space.',
  style: TextStyle(fontWeight: FontWeight.bold),
  scrollAxis: Axis.horizontal,
  crossAxisAlignment: CrossAxisAlignment.start,
  blankSpace: 20.0,
  velocity: 100.0,
  pauseAfterRound: Duration(seconds: 1),
  startPadding: 10.0,
  accelerationDuration: Duration(seconds: 1),
  accelerationCurve: Curves.linear,
  decelerationDuration: Duration(milliseconds: 500),
  decelerationCurve: Curves.easeOut,
)

For more information about the properties, have a look at the API reference.

LICENSE

Copyright (c) 2018 Marcel Garus

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Comments
  • only single child? not children?

    only single child? not children?

    Marquee( child: Text('There once was a boy who told this story about a boy: "'), )

    i want marquee every time show some diffent thing not same thing? such as ["aaa" ,"bbb","ccc"] first time show Text("aaa"); second time show Text("bbb"); thrid time show Text("ccc");

    i am not good at english ,thx

    wontfix 
    opened by manondidi 8
  • Jerk while playing the example

    Jerk while playing the example

    First of all, thanks for this widget.

    While using the marquee widget, the text jerks after every x seconds. Phone: Samsung s9+ Orientation: Landscape

    My Code is :

    child: Marquee( velocity: double.parse(_currentBanner.duration) / 100, texts: [ 'Some sample text.', 'Some other text.' ], blankSpace: 20.0, pauseAfterRound: Duration(seconds: 0), startPadding: 10.0, style: TextStyle(fontSize: double.parse(_currentBanner.font_size), color: Utils.hexToColor(_currentBanner.font_color)), scrollAxis: Axis.horizontal), )

    Can you please look into it.

    help wanted 
    opened by rohitranjan1991 6
  • It doesn't make sense to show only one string, right

    It doesn't make sense to show only one string, right

    The vertical marquee displays multiple sets of text, For example, regularly updated headlines, What's the point of having only one line of text constantly scrolling, especially vertical

    feature request 
    opened by manondidi 5
  • Flutter 2.8.1 - ScrollController not attached to any scroll views error

    Flutter 2.8.1 - ScrollController not attached to any scroll views error

    [VERBOSE-2:ui_dart_state.cc(209)] Unhandled Exception: 'package:flutter/src/widgets/scroll_controller.dart': Failed assertion: line 170 pos 12: '_positions.isNotEmpty': ScrollController not attached to any scroll views. #0 _AssertionError._doThrowNew (dart:core-patch/errors_patch.dart:47:61) #1 _AssertionError._throwNew (dart:core-patch/errors_patch.dart:36:5) #2 ScrollController.jumpTo package:flutter/…/widgets/scroll_controller.dart:170 #3 _MarqueeState.initState. package:marquee/marquee.dart:548 #4 _MarqueeState.initState. package:marquee/marquee.dart:545 #5 SchedulerBinding._invokeFrameCallback package:flutter/…/scheduler/binding.dart:1145

    opened by aytunch 4
  • Removed FadingEdgeScrollView if the platform is web.

    Removed FadingEdgeScrollView if the platform is web.

    Didn't investigate the problem further. Also updated the plugin thought maybe this would solve the problem but it didn't :/ (revert this change if there are any problems with over platforms now with this version of the plugin) Somehow the FadingEdgeScrollView is broken for web and throws an UnimplementedError. (Someone should open an issue in the FadingEdgeScrollView repo)

    opened by HardVeur 4
  • Horizontal viewport was given unbounded height

    Horizontal viewport was given unbounded height

    I am trying to use Marquee in row, but its giving me above error. Below is my function, i tried adding Expanded around but still it throws exception.

    Widget listCardView(index){
        return Container(
          margin: EdgeInsets.only(bottom: 10),
          child: Column(
            children: <Widget>[
              Container(
                height: 200,
                decoration: BoxDecoration(
                  image: DecorationImage(
                    image: NetworkImage(ytResult[index].thumbnail['high']['url']),
                    fit: BoxFit.fill,
                  ),
              ),
              ),
              Container(
                margin: EdgeInsets.only(left: 10, top: 10, bottom: 10),
                child: Row(
                  children: <Widget> [
                    
                    Column(
                      children: <Widget>[
                        Container(
                          height: 35,
                          // child: CircleAvatar(backgroundImage: ytResult[index].thumbnail['default']['url'],),
                        ),
                        Container()
                      ],
                    ),
                    Container(
                      margin: EdgeInsets.only(left: 10),
                      child: Column(
                        crossAxisAlignment: CrossAxisAlignment.start,
                        children: <Widget>[
                          Expanded(child: Marquee(text: ytResult[index].title, style: TextStyle(fontSize:18.0),)
                          ),
                          // Text(ytResult[index].title, style: TextStyle(fontSize:18.0),),
                          Container(
                            child: Row(
                              children: <Widget>[
                                Text(ytResult[index].channelId, style: TextStyle(fontSize:10.0),),
                                Text(" ∙ ", style: TextStyle(fontSize:18.0),),
                                // Text(video.getViewCount() + " views", style: TextStyle(fontSize:18.0),),
                                // Text(" ∙ ", style: videoInfoStyle,),
                                Text(ytResult[index].publishedAt + " ago", style: TextStyle(fontSize:10.0),),
                              ],
                            ),
                          )
                        ],
                      ),
                    )
                  ]
                ),
              )
            ],
          ),
        );
      }`
    ```
    opened by akshayru 4
  • Compiler warnings on Flutter 3.0

    Compiler warnings on Flutter 3.0

    While the marquee library has been updated with Flutter 3.0 support, it still refers to an older version of the fading_edge_scrollview dependency which lacks 3.0 support. This dependency should be updated to version 3.0.0 to resolve all compiler warnings when using Flutter 3.0

    opened by jannisnikoy 3
  • Flutter 3.0.0 is detecting issue with the library

    Flutter 3.0.0 is detecting issue with the library

    ../../../Documents/flutter/.pub-cache/hosted/pub.dartlang.org/marquee-2.2.1/lib/marquee.dart:545:20: Warning: Operand of null-aware operation '?.' has type 'WidgetsBinding' which excludes null.

    • 'WidgetsBinding' is from 'package:flutter/src/widgets/binding.dart' ('../../../Documents/flutter/packages/flutter/lib/src/widgets/binding.dart'). WidgetsBinding.instance?.addPostFrameCallback((_) async {
    opened by RoyalCoder88 3
  • NoSuchMethodError: The method 'toDouble' was called on null.

    NoSuchMethodError: The method 'toDouble' was called on null.

    Error Log:

    05-16 14:54:38.913 11877-12010/com.lunata.dating E/flutter: [ERROR:flutter/lib/ui/ui_dart_state.cc(148)] Unhandled Exception: NoSuchMethodError: The method 'toDouble' was called on null.
        Receiver: null
        Tried calling: toDouble()
        #0      Object.noSuchMethod (dart:core-patch/object_patch.dart:50:5)
        #1      double.> (dart:core-patch/double.dart:87:31)
        #2      ScrollPosition._updateSemanticActions (package:flutter/src/widgets/scroll_position.dart:436:16)
        #3      ScrollPosition.notifyListeners (package:flutter/src/widgets/scroll_position.dart:695:5)
        #4      ScrollPosition.forcePixels (package:flutter/src/widgets/scroll_position.dart:318:5)
        #5      ScrollPositionWithSingleContext.jumpTo (package:flutter/src/widgets/scroll_position_with_single_context.dart:201:7)
        #6      ScrollController.jumpTo (package:flutter/src/widgets/scroll_controller.dart:172:16)
        #7      _MarqueeState._makeRoundTrip (package:marquee/marquee.dart:512:17)
        <asynchronous suspension>
        #8      _MarqueeState._scroll (package:marquee/marquee.dart:446:11)
        <asynchronous suspension>
        #9      Future.doWhile.<anonymous closure> (dart:async/future.dart:534:26)
        #10     _rootRunUnary (dart:async/zone.dart:1132:38)
        #11     _CustomZone.runUnary (dart:async/zone.dart:1029:19)
        #12     _CustomZone.runUnaryGuarded (dart:async/zone.dart:931:7)
        #13     _CustomZone.bindUnaryCallbackGuarded.<anonymous closure> (dart:async/zone.dart:968:26)
        #14     Future.doWhile (dart:async/future.dart:549:18)
        #15     _MarqueeState.initState.<anonymous closure> (package:marquee/marquee.dart:441:14)
        #16     new Future.delayed.<anonymous closure> (dart:async/future.dart:316:39)
        #17     _rootRun (dart:async/zone.dart:1120:38)
        #18     _CustomZone.run (dart:async/zone.dart:1021:19)
        #19     _CustomZone.runGuarded (dart:async/zone.dart:923:7)
        #20     _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:963:23)
        #21     _rootRun (dart:async/zone.dart:1124:13)
        #22     _CustomZone.run (dart:async/zone.dart:1021:19)
        #23     _CustomZone.bindCallback.<anonymous closure> (dart:async/zone.dart:947:23)
        #24     Timer._createTimer.<anonymous closure> (dart:async-patch/timer_patch.dart:21:15)
        #25     _Timer._runTimers (dart:isolate-patch/timer_impl.dart:382:19)
        #26     _Timer._handleMessage (dart:isolate-patch/timer_impl.dart:416:5)
        #27     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:171:12)
    

    The code I use is your example:

    Marquee(
              text: 'Some sample text that takes some space.',
              style: TextStyle(fontWeight: FontWeight.bold),
              scrollAxis: Axis.horizontal,
              crossAxisAlignment: CrossAxisAlignment.start,
              blankSpace: 20.0,
              velocity: 100.0,
              pauseAfterRound: Duration(seconds: 1),
              startPadding: 10.0,
              accelerationDuration: Duration(seconds: 1),
              accelerationCurve: Curves.linear,
              decelerationDuration: Duration(milliseconds: 500),
              decelerationCurve: Curves.easeOut,
     )
    

    Flutter version:

    [√] Flutter (Channel beta, v1.5.4-hotfix.2, on Microsoft Windows [Version 10.0.17763.503], locale en-US)
        • Flutter version 1.5.4-hotfix.2 at J:\program\flutter
        • Framework revision 7a4c33425d (2 weeks ago), 2019-04-29 11:05:24 -0700
        • Engine revision 52c7a1e849
        • Dart version 2.3.0 (build 2.3.0-dev.0.5 a1668566e5)
    
    [√] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
        • Android SDK at J:\android\sdk
        • Android NDK location not configured (optional; useful for native profiling support)
        • Platform android-28, build-tools 28.0.3
        • ANDROID_HOME = J:\android\sdk
        • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
        • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)
        • All Android licenses accepted.
    
    [√] Android Studio (version 3.4)
        • Android Studio at C:\Program Files\Android\Android Studio
        • Flutter plugin version 35.3.1
        • Dart plugin version 183.6270
        • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)
    
    [√] IntelliJ IDEA Community Edition (version 2019.1)
        • IntelliJ at C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2019.1
        • Flutter plugin version 35.3.3
        • Dart plugin version 191.7141.49
    
    [√] VS Code (version 1.33.1)
        • VS Code at C:\Users\Fajar\AppData\Local\Programs\Microsoft VS Code
        • Flutter extension version 3.0.2
    
    [√] Connected device (1 available)
        • SM G532G • 4200c83dceeb64b7 • android-arm • Android 6.0.1 (API 23)
    
    • No issues found!
    
    bug 
    opened by uzuki-P 3
  • Fix initial padding and startPosition when scrolling is delayed

    Fix initial padding and startPosition when scrolling is delayed

    When you add a startPadding and use the startAfter to delay the scrolling after 'n' seconds: on this few 'n' seconds the startPadding is not applied (internally, the startPosition is not correctly set).

    Below, on the first 5 seconds, you can see that the startPadding is ignored, and cause a "jump" effect when it starts scrolling:

    Apr-08-2021 10-55-30

    Marquee(
      text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
      scrollAxis: Axis.horizontal,
      crossAxisAlignment: CrossAxisAlignment.start,
      blankSpace: 100.0,
      showFadingOnlyWhenScrolling: false,
      fadingEdgeStartFraction: 0.1,
      fadingEdgeEndFraction: 0.1,
      startPadding: 15,
      startAfter: Duration(seconds: 3),
      pauseAfterRound: Duration(seconds: 5),
    ),
    

    This fix here ensures that the startPosition is correctly set from the initState of this Widget.

    opened by emagnier 2
  • Fix '_positions.isNotEmpty': ScrollController not attached to any scroll views.

    Fix '_positions.isNotEmpty': ScrollController not attached to any scroll views.

    I have a big application and I used your widget package (I have music player and I use it for my song title in the player page, like in YT Music), though when I replace it fast in the widget tree, i.e. fast tap on my "next song" button, it turns out there's a bug in it and the following exception is being thrown: AssertionError('Fix 'package:flutter/src/widgets/scroll_controller.dart': Failed assertion: line 176 pos 12: '_positions.isNotEmpty': ScrollController not attached to any scroll views.').

    This PR fixes it.

    Videos: Error Same thing but with my fix

    opened by nt4f04uNd 2
  • Unexpected null value error on even simple widget

    Unexpected null value error on even simple widget

    I am writing this widget

    import 'package:flutter/material.dart';
    import 'package:marquee/marquee.dart';
    
    class TestScreen extends StatelessWidget {
      const TestScreen({super.key});
    
      @override
      Widget build(BuildContext context) {
        return Container(
          child: SizedBox(
            height: 50,
            child: Marquee(
              text: "Hello to this is sample marquee",
              crossAxisAlignment: CrossAxisAlignment.center,
              blankSpace: 20,
            ),
          ),
        );
      }
    }
    
    

    Eventhough the app runs and displays the marquee in terminal following error is shown

    Error: Unexpected null value.
    C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/priv
    ate/ddc_runtime/errors.dart 266:49      throw_
    C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/priv
    ate/ddc_runtime/operations.dart 528:63  nullCheck
    packages/flutter/src/widgets/scroll_position.dart 141:49
    get minScrollExtent
    packages/flutter/src/widgets/scroll_position.dart 668:18
    [_updateSemanticActions]
    packages/flutter/src/widgets/scroll_position.dart 984:5
    notifyListeners
    packages/flutter/src/widgets/scroll_position.dart 384:5
    forcePixels
    packages/flutter/src/widgets/scroll_position_with_single_context.dart 197:7
    jumpTo
    packages/flutter/src/widgets/scroll_controller.dart 172:15
    jumpTo
    packages/marquee/marquee.dart 548:23
    <fn>
    C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/patc
    h/async_patch.dart 84:54                runBody
    C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/patc
    h/async_patch.dart 123:5                _async
    packages/marquee/marquee.dart 544:51
    <fn>
    packages/flutter/src/scheduler/binding.dart 1175:15
    [_invokeFrameCallback]
    packages/flutter/src/scheduler/binding.dart 1113:9
    handleDrawFrame
    packages/flutter/src/scheduler/binding.dart 1015:5
    [_handleDrawFrame]
    C:/b/s/w/ir/cache/builder/src/out/host_debug/flutter_web_sdk/lib/_engine/engine/platfor
    m_dispatcher.dart 1168:13               invoke
    C:/b/s/w/ir/cache/builder/src/out/host_debug/flutter_web_sdk/lib/_engine/engine/platfor
    m_dispatcher.dart 219:5                 invokeOnDrawFrame
    C:/b/s/w/ir/cache/builder/src/out/host_debug/flutter_web_sdk/lib/_engine/engine/initial
    ization.dart 195:45                     <fn>
    C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/priv
    ate/ddc_runtime/operations.dart 334:14  _checkAndCall
    C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/priv
    ate/ddc_runtime/operations.dart 339:39  dcall
    
    

    Why is this happening and how to resolve this?

    opened by abhilashsajeev 1
  • _CastError (Null check operator used on a null value)

    _CastError (Null check operator used on a null value)

    Hi @MarcelGarus ,

    Thank you for this wonderful library, as it is part of my project.

    But I have some hiccups while using this library, and sometimes it's crashing by throwing the below error.

    _CastError (Null check operator used on a null value)

    Screenshot 2022-08-22 012555

    I am using the latest version of marquee (2.2.3), and below are my flutter version details.

        • Flutter version 3.0.5 at C:\Users\dines\workspace\flutter
        • Upstream repository https://github.com/flutter/flutter.git
        • Framework revision f1875d570e (6 weeks ago), 2022-07-13 11:24:16 -0700
        • Engine revision e85ea0e79c
        • Dart version 2.17.6
        • DevTools version 2.12.2
    
    
    

    And I am using marquee as below, which is causing the exception

    
    Container(
                decoration: BoxDecoration(
                  color: Theme.of(context).colorScheme.primaryContainer,
                ),
                height: Adaptive.h(4),
            
                child: Marquee(
                  text: announce.announce,
                  style: Theme.of(context).textTheme.bodyLarge!.copyWith(
                      color: Theme.of(context).colorScheme.onPrimaryContainer),
                  scrollAxis: Axis.horizontal,
                  crossAxisAlignment: CrossAxisAlignment.start,
                  blankSpace: Adaptive.w(50),
                  velocity: 10.0,
                  numberOfRounds: null,
                  pauseAfterRound: Duration(seconds: 1),
                  startPadding: 10.0,
                  accelerationDuration: Duration(seconds: 1),
                  accelerationCurve: Curves.easeIn,
                  decelerationDuration: Duration(milliseconds: 500),
                  decelerationCurve: Curves.easeOut,
                ),
              )
    

    This actually happens, while scrolling the Listview where Marqueeis one of it's children.

    Please let me know if I miss anything here.

    opened by dineshkumar02 1
  • in flutter 2.8,Layer ClipRRectEngineLayer was previously used as oldLayer

    in flutter 2.8,Layer ClipRRectEngineLayer was previously used as oldLayer

    ======== Exception caught by scheduler library ===================================================== The following assertion was thrown during a scheduler callback: Layer ClipRRectEngineLayer was previously used as oldLayer. Once a layer is used as oldLayer, it may not be used again. Instead, after calling one of the SceneBuilder.push* methods and passing an oldLayer to it, use the layer returned by the method as oldLayer in subsequent frames. 'dart:ui/compositing.dart': Failed assertion: line 88 pos 9: ''

    Either the assertion indicates an error in the framework itself, or we should provide substantially more information in this error message to help you determine and fix the underlying cause. In either case, please report this assertion by filing a bug on GitHub: https://github.com/flutter/flutter/issues/new?template=2_bug.md

    When the exception was thrown, this was the stack: 
    #2      _EngineLayerWrapper._debugCheckNotUsedAsOldLayer (dart:ui/compositing.dart:88:9)
    #3      SceneBuilder.addRetained.<anonymous closure>.recursivelyCheckChildrenUsedOnce (dart:ui/compositing.dart:656:21)
    #4      List.forEach (dart:core-patch/growable_array.dart:410:8)
    #5      SceneBuilder.addRetained.<anonymous closure>.recursivelyCheckChildrenUsedOnce (dart:ui/compositing.dart:662:18)
    #6      SceneBuilder.addRetained.<anonymous closure> (dart:ui/compositing.dart:665:7)
    #7      SceneBuilder.addRetained (dart:ui/compositing.dart:668:6)
    #8      Layer._addToSceneWithRetainedRendering (package:flutter/src/rendering/layer.dart:543:15)
    #9      ContainerLayer.addChildrenToScene (package:flutter/src/rendering/layer.dart:1106:13)
    #10     ClipRectLayer.addToScene (package:flutter/src/rendering/layer.dart:1368:5)
    #11     Layer._addToSceneWithRetainedRendering (package:flutter/src/rendering/layer.dart:546:5)
    #12     ContainerLayer.addChildrenToScene (package:flutter/src/rendering/layer.dart:1106:13)
    #13     OffsetLayer.addToScene (package:flutter/src/rendering/layer.dart:1240:5)
    #14     Layer._addToSceneWithRetainedRendering (package:flutter/src/rendering/layer.dart:546:5)
    #15     ContainerLayer.addChildrenToScene (package:flutter/src/rendering/layer.dart:1106:13)
    #16     PhysicalModelLayer.addToScene (package:flutter/src/rendering/layer.dart:2081:5)
    #17     Layer._addToSceneWithRetainedRendering (package:flutter/src/rendering/layer.dart:546:5)
    #18     ContainerLayer.addChildrenToScene (package:flutter/src/rendering/layer.dart:1106:13)
    #19     ContainerLayer.addToScene (package:flutter/src/rendering/layer.dart:1093:5)
    #20     Layer._addToSceneWithRetainedRendering (package:flutter/src/rendering/layer.dart:546:5)
    #21     ContainerLayer.addChildrenToScene (package:flutter/src/rendering/layer.dart:1106:13)
    #22     OffsetLayer.addToScene (package:flutter/src/rendering/layer.dart:1240:5)
    #23     Layer._addToSceneWithRetainedRendering (package:flutter/src/rendering/layer.dart:546:5)
    #24     ContainerLayer.addChildrenToScene (package:flutter/src/rendering/layer.dart:1106:13)
    #25     OffsetLayer.addToScene (package:flutter/src/rendering/layer.dart:1240:5)
    #26     Layer._addToSceneWithRetainedRendering (package:flutter/src/rendering/layer.dart:546:5)
    #27     ContainerLayer.addChildrenToScene (package:flutter/src/rendering/layer.dart:1106:13)
    #28     TransformLayer.addToScene (package:flutter/src/rendering/layer.dart:1681:5)
    #29     ContainerLayer.buildScene (package:flutter/src/rendering/layer.dart:938:5)
    #30     RenderView.compositeFrame (package:flutter/src/rendering/view.dart:226:37)
    #31     RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:501:18)
    #32     WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:883:13)
    #33     SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1145:15)
    #34     SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1082:9)
    (elided 5 frames from class _AssertionError and dart:async)
    

    ====================================================================================================

    opened by lzhAndroid 0
  • How to add list to Marquee

    How to add list to Marquee

    Hello I have a number of messages that are in a list. I want to display them one after the other but he lets me insert only a string. Is there another way to display the list line by line?

    opened by almog228 3
Owner
Marcel Garus
I'm studying IT Systems Engineering and working on open source thingies. ✨ Especially excited about Flutter and Rust. 🌮 Feel free to contact me. he/him
Marcel Garus
Flutter widget to show text in popup or overlay container

flutter_show_more_text_popup Flutter widget to show text in popup or overlay container Installation Add this to your package's pubspec.yaml file depen

Sanjay Sharma 44 Jul 5, 2022
A Flutter widget to show a text form field to display a date or clock dialog

A Flutter widget to show a text form field to display a date or clock dialog. This widget extend TextField and has a similar behavior as TextFormField.

m3uzz Soluções em TI 82 Jan 6, 2023
An advanced switch widget, that can be fully customized with size, text, color, radius of corners.

flutter_advanced_switch An advanced switch widget, that can be fully customized with size, text, color, radius of corners. Switch Light Switch Dark Ge

Alex Melnyk 13 Dec 15, 2022
Flutter package: Define a theme (colors, text styles etc.) as static const values which can be changed dynamically.

Flutter package: Define a theme (colors, text styles etc.) as static const values which can be changed dynamically. Also comes with useful extensions to create text styles by composition.

Marcelo Glasberg 21 Jan 2, 2023
Flutter Custom, Text, 3D, Social media button's package

Flutter Button flutter_button, which is a flutter package, contains animated, cool and awesome buttons. That you may like, thanks to this package you

Ismael Shakverdiev 15 Dec 29, 2022
A button that looks like a Cupertino text button

Cupertino Text Button A button that looks like a Cupertino text button! Text Button A simple text button can be created like this: CupertinoTextButton

Nick Sirovsky 0 Nov 24, 2022
Experimental solution for web-like text selection across widgets

Better Selection Experimental solution for web-like text selection across widgets (text, images, et cetera). Better selection is dependent on, and is

Wilson Wilson 59 Oct 12, 2022
Listview builder with image and text

listview_builder_with_image_and_text A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resource

null 0 May 4, 2022
A simple Flutter widget to add in the widget tree when you want to show nothing, with minimal impact on performance.

nil A simple widget to add in the widget tree when you want to show nothing, with minimal impact on performance. Why? Sometimes, according to a condit

Romain Rastel 127 Dec 22, 2022
A flutter carousel widget, support infinite scroll, and custom child widget.

carousel_slider A carousel slider widget. Features Infinite scroll Custom child widgets Auto play Supported platforms Flutter Android Flutter iOS Flut

Bart T 1 Nov 25, 2021
A Flutter Widget to make interactive timeline widget.

Bubble Timeline Package A Flutter Widget to make interactive timeline widget. This widget can be used to make Event Timelines, or Timelines for certai

Vansh Goel 12 Sep 22, 2022
📸 Easy to use yet very customizable zoomable image widget for Flutter, Photo View provides a gesture sensitive zoomable widget.

?? Easy to use yet very customizable zoomable image widget for Flutter, Photo View provides a gesture sensitive zoomable widget. Photo View is largely used to show interacive images and other stuff such as SVG.

Blue Fire 1.7k Jan 7, 2023
A widget lib that the widget in this lib can react to flutter ScrollController's offset

Language: English | 中文简体 linked_scroll_widgets A lib full of widgets that can react to the scrollController's offset change,to custom your UI effect.

WenJingRui 8 Oct 16, 2022
Full customable rolling switch widget for flutter apps based on Pedro Massango's 'crazy-switch' widget

lite_rolling_switch Full customable rolling switch widget for flutter apps based on Pedro Massango's 'crazy-switch' widget https://github.com/pedromas

Eduardo Muñoz 48 Dec 1, 2022
Progress Dialog widget for flutter projects with ability to customize loading widget, background color and background blur.

DISCONTINUED Checkout ArsDialog ars_progress_dialog Customizable progress dialog for Flutter applications with smooth animation for background dim col

Arsam 8 Apr 15, 2022
A Flutter widget that will give a Glitch Animation Effect to it's child widget.

GlitchEffect A Flutter widget that will give a Glitch Animation Effect to it's child widget. Installation Add the latest version of package to your pu

Sameer Singh 6 Nov 25, 2022
Widget, that can make any static located widget hidable

Installing See the official installing guidline from hidable/install Usage & Overview To start using Hidable widget, we have to create a ScrollControl

Anon 18 Dec 16, 2022
A widget that allow user resize the widget with drag

Flutter-Resizable-Widget A widget that allow user resize the widget with drag Note: this widget uses Getx Example bandicam.2021-11-11.12-34-41-056.mp4

MohammadAminZamani.afshar 22 Dec 13, 2022
Flutter Carousel Pro - A Flutter Carousel widget

Carousel Extended A Flutter Carousel widget. Usage As simple as using any flutter Widget. Based on Carousel Pro but extended to be able to navigate be

omid habibi 3 Dec 7, 2020