我想在我的颤振应用程序中完成向右滑动的过渡。问题是路由转换有点创建我想要从中转换的页面的新实例,因此ListView滚动重置。
这就是我创建新路线的方式
/// @oldRoute needed cause this route transition utilizes `SlideStackRightRoute`
Route createSettingsRoute(Widget oldRoute) {
return SlideStackRightRoute(exitPage: oldRoute, enterPage: SettingsRoute());
}
Run Code Online (Sandbox Code Playgroud)
最后幻灯片过渡类本身
import 'package:flutter/material.dart';
/// Creates cupertino-like route transition, where new route pushes old from right to left
class SlideStackRightRoute extends PageRouteBuilder {
final Widget enterPage;
final Widget exitPage;
static var exBegin = Offset(0.0, 0.0);
static var exEnd = Offset(-0.5, 0.0);
static var entBegin = Offset(1.0, 0.0);
static var entEnd = Offset.zero;
static var curveIn = Curves.easeOutSine; …Run Code Online (Sandbox Code Playgroud)