import 'package:flutter/material.dart';
/// Flutter infinite scroll
/// Flutter 无限滚动(横向)
///
/// bckf.cn
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) => MaterialApp(
home: HomePage(),
);
}
int maxPage = 2000000000;
class HomePage extends StatelessWidget {
static const List<Color> _colors = [Colors.blue, Colors.green, Colors.red];
final pageController = new PageController(initialPage: maxPage);
@override
Widget build(BuildContext context) => Scaffold(
body: PageView.builder(
controller: pageController,
itemBuilder: (BuildContext context, int index) {
var renderIndex = index - maxPage;
renderIndex = renderIndex % _colors.length;
if (renderIndex < 0) {
renderIndex += _colors.length;
}
return Container(
color:_colors[index % _colors.length],
child: Center(
child: Text("text $renderIndex, default Index: $index",
style: TextStyle(
fontSize: 36.0,
color: Colors.white))));
},
),
);
}
View Compiled
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.