我正在尝试Swiper
在同一页面上使用具有不同参数的 Flutter,但是我不确定如何构造代码。
我想在多个页面中使用相同的代码我尝试了几种方法,但它不起作用。所以我想让这个小部件可重用
import 'package:assets_audio_player/assets_audio_player.dart';
import 'package:card_swiper/card_swiper.dart';
import 'package:flutter/material.dart';
class Animals extends StatefulWidget {
@override
_AnimalsState createState() => _AnimalsState();
}
class _AnimalsState extends State<Animals> {
List images = [
'assets/images/img/getStart.jpg',
'assets/images/a/a.jpg',
'assets/images/a/b.jpg',
'assets/images/a/c.jpg',
'assets/images/a/d.jpg',
'assets/images/a/e.jpg',
'assets/images/a/f.jpg'
];
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Animals'),
),
body: Swiper(
itemCount: images.length,
loop: false,
itemBuilder: (BuildContext context, int index) {
return Padding(
padding: const EdgeInsets.all(27.0),
child: Image.asset(
images[index],
),
);
},
indicatorLayout: PageIndicatorLayout.COLOR,
onIndexChanged: (index) {
playaudio(index);
},
autoplayDelay: 10000,
autoplay: true,
pagination: SwiperPagination(),
control: SwiperControl(),
),
);
}
}
void playaudio(index) async {
AssetsAudioPlayer.newPlayer().open(
Audio('assets/audio/a/a$index.mp3'),
autoStart: true,
loopMode: LoopMode.none,
showNotification: true,
);
}