Flutter 自定义marquee垂直滚动

这篇博客介绍了如何在Flutter中创建一个自定义的垂直Marquee插件,用于实现公告列表的向上滚动效果。文章提供了自定义类的详细说明及使用方法。
摘要由CSDN通过智能技术生成

自定义垂直marquee插件

用来向上垂直滚动列表(一般滚动公告)

  1. 自定义类:

     import 'dart:async';
     import 'package:flutter/material.dart';
    
     class Marquee extends StatefulWidget {
       final List<String> textList;
       final List<TextSpan> textSpanList;
       final double fontSize;
       final Color textColor;
       final TextAlign textAlign;
       final Duration scrollDuration;
       final Duration stopDuration;
       final bool tapToNext;
       final MarqueeController controller;
       const Marquee({
         Key key,
         this.textList = const [],
         this.textSpanList = const [],
         this.textAlign = TextAlign.left,
         this.fontSize = 14.0,
         this.textColor = Colors.black,
         this.scrollDuration = const Duration(seconds: 1),
         this.stopDuration = const Duration(seconds: 3),
         this.tapToNext = false,
         this.controller,
       }) : super(key: key);
    
       @override
       _MarqueeState createState() => _MarqueeState();
     }
    
     class _MarqueeState extends State<Marquee> with SingleTickerProviderStateMixin {
       double percent = 0.0;
       int current = 0;
    
       List<String> get textList => widget.textList;
       List<TextSpan> get textSpanList => widget.textSpanList;
    
       Timer stopTimer;
    
       AnimationController animationConroller;
    
       MarqueeController get controller => widget.controller;
    
       @override
       void initState() {
         super.initState();
         animationConroller = AnimationController(vsync: this
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值