Flutter用Swiper实现文字跑马灯效果
代码很简单,但是实用。在用listview时,用Divider分割,利用Expand即可让上部分滚动但是跑马灯却可以固定不动。
@override Widget build(BuildContext context) { return SizedBox( height: 30, child: Card( // height: 40.0, color: Colors.blue[100], shape: RoundedRectangleBorder( borderRadius: BorderRadius.all(Radius.circular(10.0)), ), // 抗锯齿
clipBehavior: Clip.antiAlias, elevation: 20, // 阴影大小 child: Container( height: 40, alignment: Alignment.bottomCenter, child: Center( child: Swiper( // autoplayDisableOnInteraction: true, // itemWidth: double.infinity, //containerHeight: 40, //itemHeight: 40, autoplayDelay: 8000, itemCount: l.length, // 对象个数 loop: true, // 允许循环播放 autoplay: true, // 允许自动播放 scrollDirection: Axis.vertical, // 滚动方向设置为水平 duration: 1000, // 执行时长 itemBuilder: (BuildContext context, int index) { return Text( listData[index], style: TextStyle(fontSize: 14, color: Colors.blue[800]), textAlign: TextAlign.center, textDirection: TextDirection.ltr, ); }, ))))); }
listData文件格式:
List listData = [
"人命至重,有贵千金,一方济之,德逾于此。唐·孙思邈!\n进则救世,退则救民。东汉·张仲景。\n不为良相,亦为良医。范仲淹。",
"喉干嗓哑时: 饮淡盐水;服蜜梨膏;饮橘皮糖茶;\n常吃生梨能防治口舌生疮和咽喉肿痛;\n脸上长痘痘时,口腔溃疡时,咽喉疼痛时,绿豆汤有奇效。",
"初起感冒:葱白(连须)、生姜5片,黑豆豉30粒、水一碗煎开,\n加适量红塘一次服下(葱姜不需服下),并马上睡觉,出汗即愈。",
"北方多称医生为大夫,南方则以郎中为对医生的敬称。\n中医的别名有:岐黄,青囊,杏林,橘井,悬壶,大夫,郎中。",
"山药90克、百合40克、红枣15个、薏米30克。\n百合清热润燥,红枣、薏米滋阴健脾和胃。\n这粥有滋阴养胃、清热润燥的作用。",
];
点击查看显示效果:
http://www.pavogroup.top/images/Software/chinamedicine.mp4