Как сделать следующую страницу интерактивной во время перехода с PageView на Flutter?
Я использую PageView
для создания скользящих переходов между несколькими страницами, содержащими базовый RaisedButton
.
Однако во время перехода на кнопку нельзя нажать. Вместо этого, когда экран приклеивается, он отменяет или завершает переход, но после этого требуется второй щелчок.
Мое приложение выглядит так:
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
final controller = PageController();
return MaterialApp(
title: "MyApp",
initialRoute: "/",
routes: {
"/": (context) => PageView(
controller: controller,
children: List.generate(100, (_) => MyPage(controller)),
),
},
);
}
}
Моя страница выглядит так:
class MyPage extends StatelessWidget {
final PageController controller;
MyPage(this.controller);
@override
Widget build(BuildContext context) {
return Column(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
RaisedButton(
onPressed: () {
controller.nextPage(
duration: Duration(milliseconds: 5000),
curve: Curves.ease,
);
},
child: Text("Go to next page"),
),
SizedBox(
width: 200,
height: 200,
child: RaisedButton(
onPressed: () => debugPrint("Button clicked!"),
child: Text("Click me"),
),
)
],
);
}
}
Есть ли способ как-то "принудительно" нажать кнопку даже при переходе с одной страницы на другую?