搜索插件、代码仓与 APP 分类

cupertino_back_gesture 封面
插件详情v0.1.0

cupertino_back_gesture

一个用于设置 iOS 返回滑动手势区域自定义宽度的包。

AndroidiOSWebmacOSWindowsLinux
近 30 天下载
1660
喜欢数
69
Pub 分数
150

安装插件

flutter pub add cupertino_back_gesture

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

cupertino_back_gesture 包允许开发者自定义 Flutter 应用程序中 iOS 风格返回滑动手势区域的宽度。这对于微调导航的交互边缘非常有用,确保在 iOS 平台上提供更直观的用户体验。该包扩展了 Flutter 的默认 CupertinoPageRoute 行为,无需进行深入的平台特定修改。它支持所有主要平台,包括 Android、iOS、Web、macOS、Windows 和 Linux,使跨平台应用在保持一致的 iOS 导航模式方面更加灵活。

适合场景

  • 自定义 iOS 返回手势区域宽度
  • 改进 iOS 上的导航用户体验
  • 跨平台 iOS 风格导航
  • 微调滑动灵敏度
  • 增强手势响应性
  • 针对特定UI布局调整手势

主要特点

  • 可调整的返回滑动手势宽度
  • iOS 原生手势行为
  • 跨平台兼容性
  • 所需设置最少
  • 无需自定义路由实现
  • 与 CupertinoPageRoute 兼容

适合对象

  • 面向 iOS 用户的开发者
  • 具有复杂导航流程的应用程序
  • 寻求 iOS 一致性的团队
  • 需要手势自定义的项目
  • 具有深度链接的 Flutter 应用
  • 以用户体验为中心的移动开发

使用建议

  • 仅限 iOS 风格的返回手势
  • 可能需要在多个设备上进行测试
  • 标准手势行为不需要
  • 不影响 Android 返回行为
  • 最好与 Cupertino 导航配合使用
  • 与其他手势检测器的潜在冲突

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

cupertino_back_gesture

pub package

A Flutter package to set custom width of iOS back swipe gesture area.

Usage

To use this package, add cupertino_back_gesture as a dependency in your pubspec.yaml file.

Example

To change width of area where the user can start back swipe for the whole app

  • Wrap your MaterialApp with BackGestureWidthTheme with desired backGestureWidth
  • set iOS builder of pageTransitionsTheme to 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(),
  ),
)

Possible variants for backGestureWidth are

  • BackGestureWidth.fixed(w) where w is width in logical pixels
  • BackGestureWidth.fraction(f) where f is fraction of screen width from 0.0 to 1.0

Screenshots

Areas where back swipe gesture can be started are shaded with hatching

Default Flutter BackGestureWidth.fraction(1 / 2)
before after

Example app

Complete example can be found in example folder

所属分类

源码仓库

使用此插件的项目

暂无相关数据。