Я хочу сделать анимированный просмотр прокрутки, как закрытие mov ie кредитов в флаттере. Вот что я делаю.
Это то, что я хочу сделать.
Мой код:
import 'package:flutter/material.dart';
class AutoScrollPage extends StatefulWidget {
@override
AutoScrollPageState createState() => AutoScrollPageState();
}
class AutoScrollPageState extends State<AutoScrollPage> with TickerProviderStateMixin {
ScrollController _scrollController = ScrollController();
bool scroll = true;
int speedFactor = 20;
_scroll() {
double maxExtent = _scrollController.position.maxScrollExtent;
double distanceDifference = maxExtent - _scrollController.offset;
double durationDouble = distanceDifference / speedFactor;
_scrollController.animateTo(_scrollController.position.maxScrollExtent,
duration: Duration(seconds: durationDouble.toInt()),
curve: Curves.linear);
}
@override
void initState() {
WidgetsBinding.instance.addPostFrameCallback((_) {
_scroll();
});
super.initState();
}
@override
void dispose() {
///Don't forget to clean up resources when you are done using it
_scrollController.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
String val = '''
BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE. BUNCH OF TEXT HERE.v
BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE. BUNCH OF TEXT HERE.v
BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE. BUNCH OF TEXT HERE.v
BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE. BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE.BUNCH OF TEXT HERE. BUNCH OF TEXT HERE.v
''';
return Scaffold(
backgroundColor: Colors.black,
body: SingleChildScrollView(
controller: _scrollController,
child: Text(
val,
maxLines: 1000,
style: TextStyle(color: Colors.yellow, fontSize: 25.0),
),
),
);
}
}
Примечание. Когда мой ScrollView завершит работу. Это прекратить прокрутку. Но во втором примере видео текст никогда не останавливается. Он движется в космос, пока не станет очень маленьким.