import 'package:flutter/material.dart';
class MyListView extends StatefulWidget {
@override
_MyListViewState createState() => _MyListViewState();
}
class _MyListViewState extends State<MyListView> {
final ScrollController _scrollController = ScrollController();
@override
Widget build(BuildContext context) {
return ListView.builder(
controller: _scrollController,
itemCount: 100,
itemBuilder: (context, index) => ListTile(title: Text('Item $index')),
);
}
void scrollToIndex(int index) {
_scrollController.animateTo(
index * 50.0,
duration: Duration(seconds: 1),
curve: Curves.easeInOut,
);
}
@override
void initState() {
super.initState();
Future.delayed(Duration(seconds: 2), () => scrollToIndex(50));
}
@override
void dispose() {
_scrollController.dispose();
super.dispose();
}
}
void main() {
runApp(MaterialApp(
home: MyListView(),
));
}