ShuffleIt:SwiftUI自定义堆叠视图与动画库





项目名称:ShuffleIt

项目概述

ShuffleIt是一个用户界面库,用于在SwiftUI中创建具有丰富动画效果的可定制堆叠视图。该库包括CarouselStack、ShuffleDeck和ShuffleStack三种视图,每种视图都有其独特的滑动和洗牌行为。

主要功能

  • CarouselStack:具有轮播效果的堆叠视图,仅渲染最多五个内容视图以显示滑动动画。

  • ShuffleDeck:模仿苹果信息应用中照片集合的行为的堆叠视图,仅渲染屏幕上可见的视图,并根据当前索引切换内容视图的数据。

  • ShuffleStack:适用于横幅的堆叠视图,仅渲染屏幕上可见的三个内容视图,并根据当前索引切换内容视图的数据。

使用方法

以下是如何使用ShuffleIt中视图的示例代码:

CarouselStack 使用示例

let colors: [Color] = [.blue, .brown, .black, .cyan, .green, .indigo, .pink, .purple, .red, .orange, .yellow]
var body: some View {
    CarouselStack(
        colors,
        initialIndex: 0
    ) { color in
        color
            .frame(height: 200)
            .cornerRadius(16)
    }
}

ShuffleDeck 使用示例

let colors: [Color] = [.blue, .brown, .black, .cyan, .green, .indigo, .pink, .purple, .red, .orange, .yellow]
var body: some View {
    ShuffleDeck(
        colors,
        initialIndex: 0
    ) { color in
        color
            .frame(width: 200, height: 300)
            .cornerRadius(16)
    }
}

ShuffleStack 使用示例

let colors: [Color] = [.blue, .brown, .black, .cyan, .green, .indigo, .pink, .purple, .red, .orange, .yellow]
var body: some View {
    ShuffleStack(
        colors,
        initialIndex: 0
    ) { color in
        color
            .frame(height: 200)
            .cornerRadius(16)
    }
}

要求

  • 支持iOS 15+、macOS 12+、watchOS 8+、tvOS 15+。

  • 使用Xcode 13.3.1及以上版本开发。

安装

使用Swift Package Manager添加依赖:

dependencies: [
    .package(url: "https://github.com/dscyrescotti/ShuffleIt.git", from: "2.1.3")
]

探索

  • 文档ShuffleIt文档提供了清晰的API文档,帮助用户快速熟悉和使用。

  • 示例项目:ShuffleIt包含示例项目,用户可以在终端使用以下命令运行示例项目:

    > git clone https://github.com/dscyrescotti/ShuffleIt.git
    > cd ShuffleIt && xed Demo

动机

作者出于对艺术和创新的热情,创建了ShuffleIt,旨在提供优雅的UI组件,并作为其他开发者的学习资源。

作者

Scotti | @dscyrescotti

贡献

ShuffleIt欢迎开发者贡献代码,如果遇到任何问题,可以提出issue。

许可证

ShuffleIt在MIT许可证下可用,详情见LICENSE文件。

项目地址

项目的GitHub地址为:dscyrescotti/ShuffleIt

或许喜欢

SwiftUI-ShimmeringView:优雅简单的闪烁加载视图

SwiftUI-ShimmeringView是一个用于iOS、macOS、watchOS和tvOS的SwiftUI库,提供优雅的闪烁效果视图替代传统的加载指示器。

最近更新 2024-12-14

FlowStacks:为SwiftUI导航添加超能力

FlowStacks是一个SwiftUI库,它扩展了NavigationStack API,允许开发者使用统一的API进行页面推送、展示sheet和全屏覆盖,支持iOS、tvOS、watchOS和macOS。

最近更新 2024-12-13

SwiftJSONFormatter:优雅美化和压缩JSON字符串的Swift工具

SwiftJSONFormatter是一个纯Swift编写的JSON格式化工具,支持美化和压缩JSON字符串,保持字典键值顺序稳定,兼容iOS、macOS、tvOS和watchOS平台。

最近更新 2024-12-09

热榜

Made with in Shangrao,China By 老雷

Copyright © devler.cn 1987 - Present

赣ICP备19009883号-1