FXSwipeAction:SwiftUI库实现独特可定制的滑动操作





项目名称:FXSwipeAction

项目简介

FXSwipeAction是一个为SwiftUI视图提供滑动操作功能的库,它简单易集成且提供广泛的自定义选项。这个库通过提供直观和响应式的滑动界面,增强了用户与应用的交互。

功能特点

  • 多用途:在任何SwiftUI视图上启用滑动操作,包括列表和垂直堆栈。

  • 图标支持:为滑动操作添加自定义图标或SF Symbols,使界面更直观。

  • 完全可定制:根据应用设计定制滑动操作的外观。

  • 智能交互:在与SwipeViewGroup中的其他项目交互时自动关闭滑动操作。

  • RTL支持:全面支持从右到左(RTL)语言,确保无论是RTL还是LTR布局都能无缝集成滑动操作。

使用方法

  1. 导入FXSwipeAction

    import FxSwipeAction

  2. 添加滑动操作
    将滑动操作添加到你的视图中。你可以在领先或尾随侧添加单个操作,或者两者都添加。为了确保独特且用户友好的体验,建议每侧只使用一个操作。

    CarwView()
        .swipeActions(
            leading: SwipeActionButton(
                iconType: .system("checkmark.circle.fill"),
                type: .leading,
                action: {
                    // 你的动作
                }, 
                tint: .green
            ),
            trailing: SwipeActionButton(
                iconType: .system("trash.fill"),
                type: .trailing,
                action: {
                    // 你的动作
                }, 
                tint: .red
            )
        )
        // 记得设置frame高度
        .frame(height: 80)

  3. 自定义(可选)
    使用swipeActionsStyle修饰符自定义滑动操作的外观和感觉。这个功能提供广泛的自定义选项,允许你微调滑动操作和内容的外观,以匹配你的应用设计语言。

    // swipeActions ...
    .swipeActionsStyle(
        main: .init(
            cornerRadius: 20, // 滑动操作按钮的圆角
            swipeSpacing: 0,  // 内容和滑动操作按钮之间的空间
            padding: 12       // 滑动操作的顶部和底部内边距
        ),
        shadow: .init(
            shadowColor: .gray.opacity(0.2),  // 阴影的颜色和透明度
            shadowRadius: 8,                  // 阴影的模糊半径
            shadowOffset: CGSize(width: 0, height: 10) // 阴影的偏移
        ),
        style: .init(
            fontColor: .white,   // 滑动操作中文本的颜色
            fontSize: 20,        // 滑动操作中文本的大小
            iconColor: .white,   // 滑动操作中图标的颜色
            backgroundColor: .white // 内容的背景色,不是滑动操作本身
        )
    )

  4. 与VStack一起使用
    如果你与垂直堆栈一起使用,你需要在swipeActions后添加.padding(.horizontal)以正确对齐。

  5. FXSwipeViewGroup(可选)
    要确保在一组视图中只有一个滑动操作处于活动状态,用SwipeViewGroup包装整个视图层次结构。这在有多个可滑动项目时特别有用,你希望防止多个项目同时被滑动打开。

    当使用SwipeViewGroup时,它管理所有子视图的滑动状态。一旦在一个项目上启动滑动操作,其他项目上之前打开的任何滑动操作将自动关闭。这有助于保持干净和用户友好的界面。

    示例用法:
    SwipeViewGroup包装你的视图,例如NavigationStack或项目列表,并根据需要在该组中的各个项目上添加.swipeActions()修饰符。

    SwipeViewGroup {
        NavigationStack {
            // 你的内容...
            // 例如,带有滑动操作的卡片视图
            .swipeActions()
        }
    }

安装方法

使用Swift Package Manager安装FXSwipeAction:

dependencies: [
    .package(url: "https://github.com/X901/FXSwipeAction.git")
]

系统要求

  • iOS 15+

  • Xcode 13+

或许喜欢

BookPageFlipAnimation:SwiftUI实现的3D翻页动画图书应用界面

BookPageFlipAnimation是一个基于SwiftUI的iOS图书应用项目,提供3D翻页动画和交互式体验,展示精选图书封面,增强用户互动和视觉体验。

最近更新 2024-12-10

RichTextKit:Swift和SwiftUI中编辑富文本的SDK

RichTextKit是一个Swift SDK,支持在Swift和SwiftUI中编辑富文本,具备文本样式、字体、颜色等多种功能,并提供跨平台的RichTextEditor。

最近更新 2024-12-09

SwiftUICoreImage:简化Core Image在SwiftUI中的使用

SwiftUICoreImage是一个开源库,旨在简化在SwiftUI中使用Core Image进行图像处理的过程,提供链式滤镜应用和渲染到SwiftUI视图的功能。

最近更新 2024-12-10

热榜

Made with in Shangrao,China By 老雷

Copyright © devler.cn 1987 - Present

赣ICP备19009883号-1