如何在Flutter中实现滑动到上一页?

时间:2018-04-18 08:07:30

标签: dart flutter

返回功能仅适用于iPhone屏幕边缘。如何从屏幕上的任何位置滑动到上一页?

5 个答案:

答案 0 :(得分:2)

使用MDN documentation使其在Android上运行。

答案 1 :(得分:2)

正确的方法是:

将此添加到您的应用主题:

theme: ThemeData(
    pageTransitionsTheme: PageTransitionsTheme(
      builders: {
        TargetPlatform.android: CupertinoPageTransitionsBuilder(),
        TargetPlatform.iOS: CupertinoPageTransitionsBuilder(),
      }
    )
),

答案 2 :(得分:1)

您很可能正在寻找允许swip进行下一页/上一页手势的PageView

答案 3 :(得分:1)

如果我理解正确,那么问题是如何设置iOS的后扫手势区域的自定义宽度? 因此,一种可能的解决方案是使用此软件包:cupertino_back_gesture

软件包作者的解释:

要更改用户可以开始向后滑动整个应用程序的区域的宽度,请执行以下操作:

  • 用所需的MaterialAppBackGestureWidthTheme包裹backGestureWidth
  • pageTransitionsTheme的iOS构建器设置为CupertinoPageTransitionsBuilderCustomBackGestureWidth
import 'package:cupertino_back_gesture/cupertino_back_gesture.dart';

BackGestureWidthTheme(   backGestureWidth: BackGestureWidth.fraction(1 / 2),   child: MaterialApp(
    theme: ThemeData(
      pageTransitionsTheme: PageTransitionsTheme(
        builders: {
          TargetPlatform.android: FadeUpwardsPageTransitionsBuilder(),
          TargetPlatform.iOS: CupertinoPageTransitionsBuilderCustomBackGestureWidth(),
        },
      ),
    ),
    home: MainPage(),   
  ), 
)

可以在github.com上找到示例应用

答案 4 :(得分:-1)

另一种解决方案是使用 swipeable_page_rout。它具有特定参数 onlySwipeFromEdge: false