Метод jumpToPage
Метод jumpToPage класса PageController
сразу показывает страницу с заданным номером.
Анимации нет.
Номер считают с нуля.
Синтаксис
controller.jumpToPage(1)
Параметры
| Параметр | Описание |
|---|---|
page |
Индекс страницы. Позиционный аргумент. |
Пример
Давайте вызовем его в простом экране:
import 'package:flutter/material.dart';
class Pager extends StatefulWidget
{
@override
State<Pager> createState() => _PagerState();
}
class _PagerState extends State<Pager>
{
late final PageController controller = PageController();
@override
Widget build(BuildContext context)
{
controller.jumpToPage(1);
return PageView(
controller: controller,
children: [
Center(child: Text('abcde')),
Center(child: Text('12345')),
],
);
}
}
void main()
{
runApp(MaterialApp(home: Scaffold(body: Pager())));
}
На экране страница сменится после вызова метода контроллера.
Пример
Давайте повторим вызов с другими числами:
import 'package:flutter/material.dart';
class Pager2 extends StatefulWidget
{
@override
State<Pager2> createState() => _Pager2State();
}
class _Pager2State extends State<Pager2>
{
late final PageController controller = PageController(initialPage: 1);
@override
Widget build(BuildContext context)
{
controller.jumpToPage(0);
return PageView(
controller: controller,
children: [
Center(child: Text('abcde')),
Center(child: Text('12345')),
],
);
}
}
void main()
{
runApp(MaterialApp(home: Scaffold(body: Pager2())));
}
На экране видна другая страница после второго вызова.
Смотрите также
-
метод
animateToPage,
который часто ставят рядом в прокручиваемых экранах -
виджет
NotificationListener,
который дополняет работу с прокруткой -
метод
previousPage,
который помогает собрать сложный список -
виджет
ScrollConfiguration,
который задаёт поведение или данные прокрутки