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

Класс CurvedAnimation

CurvedAnimation(parent: controller, curve: Curves.easeIn)

Синтаксис

CurvedAnimation( parent: animation, curve: curve, )

Методы

Метод Описание
dispose Отписывает CurvedAnimation от parent и освобождает listener.

Пример

Давайте обернём контроллер:

import 'package:flutter/material.dart'; class Pulse extends StatefulWidget { const Pulse({super.key}); @override State<Pulse> createState() => _PulseState(); } class _PulseState extends State<Pulse> with SingleTickerProviderStateMixin { late AnimationController _controller; @override void initState() { super.initState(); _controller = AnimationController( vsync: this, duration: Duration(milliseconds: 600), ); } @override void dispose() { _controller.dispose(); super.dispose(); } @override Widget build(BuildContext context) { var curved = CurvedAnimation(parent: _controller, curve: Curves.easeIn); return MaterialApp(home: Scaffold(body: Center(child: FadeTransition(opacity: curved, child: Text('abcde'))))); } } void main(){runApp(const Pulse());}

На экране 'abcde' исчезает по easeIn.

Пример

Давайте сменим curve:

import 'package:flutter/material.dart'; class Pulse extends StatefulWidget { const Pulse({super.key}); @override State<Pulse> createState() => _PulseState(); } class _PulseState extends State<Pulse> with SingleTickerProviderStateMixin { late AnimationController _controller; @override void initState() { super.initState(); _controller = AnimationController( vsync: this, duration: Duration(milliseconds: 600), ); } @override void dispose() { _controller.dispose(); super.dispose(); } @override Widget build(BuildContext context) { var curved = CurvedAnimation(parent: _controller, curve: Curves.bounceOut); return MaterialApp(home: Scaffold(body: Center(child: FadeTransition(opacity: curved, child: Text('12345'))))); } } void main(){runApp(const Pulse());}

На экране '12345' с bounceOut.

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

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить