Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
386 of 1024 menu
◀ ▶

Метод animateToPage

Метод animateToPage класса PageController листает к странице с заданным номером. Номер считают с нуля. Длительность и кривая задают, как быстро едет страница.

Синтаксис

controller.animateToPage(1, duration: Duration(milliseconds: 300), curve: Curves.ease)

Параметры

Параметр Описание
page Индекс целевой страницы. Позиционный аргумент.
duration Длительность Duration.
curve Кривая скорости анимации.

Пример

Давайте вызовем его в простом экране:

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.animateToPage(1, duration: Duration(milliseconds: 300), curve: Curves.ease); 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.animateToPage(0, duration: Duration(milliseconds: 200), curve: Curves.linear); return PageView( controller: controller, children: [ Center(child: Text('abcde')), Center(child: Text('12345')), ], ); } } void main() { runApp(MaterialApp(home: Scaffold(body: Pager2()))); }

На экране видна другая страница после второго вызова.

Смотрите также

  • метод previousPage,
    который часто ставят рядом в прокручиваемых экранах
  • метод jumpToPage,
    который дополняет работу с прокруткой
  • метод nextPage,
    который помогает собрать сложный список
  • виджет NotificationListener,
    который задаёт поведение или данные прокрутки
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить