class _MainMenuState extends State<MainMenu> {
final scaffoldKey = GlobalKey<ScaffoldState>();
final scrollDirection = Axis.vertical;
late AutoScrollController controller;
@override
void initState() {
print("-инициализация класса..");
controller = AutoScrollController(
viewportBoundaryGetter: () =>
Rect.fromLTRB(0, 0, 0, MediaQuery.of(context).padding.bottom),
suggestedRowHeight: 2000, // если большой список, и скролл визуально идёт медленно, то это "шаг" скролла. Т.е. чем больше, тем быстрее.
axis: scrollDirection
);
}
Future _scrollToCounter(int counter) async {
await controller.scrollToIndex(counter, duration: Duration(seconds: 1));
controller.highlight(counter);
}
....
...
// список ТМЦ для инвентаризации (если есть)
body: ListView.builder(
physics: NeverScrollableScrollPhysics(),
scrollDirection: scrollDirection,
controller: controller,
padding: const EdgeInsets.all(8),
itemCount: globals.TMCList.length,
itemBuilder: (BuildContext context, int index) {
return AutoScrollTag(
key: ValueKey(index),
controller: controller,
index: index,
child: Container(
padding: EdgeInsets.symmetric(vertical: 10),
child: Column(
children: [
Text(
globals.TMCList[index]["name"],
textAlign: TextAlign.start,
),
Align(
.....
floatingActionButton: FloatingActionButton(
onPressed: (){
_scrollToCounter(10);
},