Action Status MIT License

ShuffleIt 是一个 SwiftUI 用户界面库,它提供了一系列可定制的堆叠视图,具有各种优雅的洗牌、滑动和轻扫行为。

CarouselStack ShuffleDeck ShuffleStack
CarouselStack-Demo ShuffleStack-Demo

💡 特性

CarouselStack

CarouselStack 是一个堆叠视图,在内容视图堆栈上具有滑动行为,并带有轮播效果。 就像 ShuffleStack 一样,它不会渲染所有内容视图,但它最多渲染五个内容视图,这足以显示带有滑动动画的内容视图。 此外,它还提供可定制的修饰符来修改视图的外观,以便易于调整到所需效果。

用法

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)
    }
}
预览 CarouselStack-Preview

要了解更多关于 CarouselStack 的信息,请查看文档

ShuffleDeck

ShuffleDeck 是一个堆叠视图,在内容视图堆栈上具有洗牌行为,它模仿了 Apple Messages App 中照片集的功能。 由于它基于内容视图的可重用性,它只渲染屏幕上可见的视图,并根据当前索引切换内容视图的数据。 由于它带有一系列的修饰符,因此它完全支持定制视图以满足所需的外观。

用法

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)
    }
}
预览 ShuffleDeck-Preview

要了解更多关于 ShuffleDeck 的信息,请查看文档

ShuffleStack

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)
    }
}
预览 ShuffleStack-Preview

要了解更多关于 ShuffleStack 的信息,请查看文档

从 2.0.0 版本开始,有一些更改重命名了一些修饰符和一些 ShuffleStack 的类型。 请查看文档以相应地更新您的代码。

⚠️要求

ShuffleIt 使用 Xcode 13.3.1 开发。 确保您使用的是 Xcode 13.3.1 及更高版本。

🛠 安装

📦 使用 Swift Package Manager

将其作为依赖项添加到您的 Package.swift 中。

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

🔎 探索

文档

ShuffleIt 提供了清晰的文档,以增加对 API 的熟悉程度,并降低使用时的学习曲线。 您可以通过此链接查看。

演示项目

ShuffleIt 还附带了演示项目,这是探索可用堆叠视图的 API 用法的最佳场所。 要运行演示项目,您可以在终端中使用以下命令。

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

之后,Xcode 将打开该项目,然后您可以按 ⌘+R 来运行该项目。

🎉 动机

因为我有点像一个艺术家,所以我真的很喜欢创造一些创新的东西,特别是在实现用户界面元素方面。 对我来说,探索 API 并创建优雅的组件是一件非常愉快的事情,然后它就成了我珍贵的爱好。 这就是为什么我过去常常制作各种组件来测试我到目前为止所能达到的目标。 最近,我萌生了一个想法,将我的创作集中在一个地方,并将它们传递给世界,以便它可以很容易地在其他项目中使用,也可以用作其他开发人员的学习资源。 怀着这个意图,我最终发布了我的第一个 SwiftUI UI 库,名为 ShuffleIt

✍️ 作者

Scotti | @dscyrescotti

 

👨‍💻 贡献

如果您有任何增强的想法,或者遇到任何错误,ShuffleIt 欢迎所有开发人员贡献并开启问题。

© 许可

ShuffleIt 在 MIT 许可下可用。 有关更多信息,请参见LICENSE文件。