FlowStacks:为SwiftUI导航添加超能力
项目名称:FlowStacks
项目简介
FlowStacks是一个为SwiftUI提供的库,它增强了NavigationStack
API,使得开发者可以使用相同的API来处理页面推送、展示sheets和全屏覆盖。这个库不仅支持最新的SwiftUI版本,还可以在旧版本的iOS、tvOS、watchOS和macOS上使用。它特别适合需要深度链接、视图重用、导航逻辑集中管理、以及将导航拆分为多个可重用协调器的场景。
核心功能
深度链接支持:支持将链接深入到应用的深层导航路径中。
视图重用:在不同的导航上下文中轻松重用视图。
导航控制:方便地回到根屏幕或导航堆栈中的特定屏幕。
协调器模式:使用协调器模式将导航逻辑集中在一个地方。
可组合的导航:将应用的导航拆分为多个可重用的协调器,并组合它们。
熟悉的API
FlowStacks提供了与NavigationStack
相似的API,通过将Navigation
替换为Flow
来使用。例如,NavigationStack
变为FlowStack
,NavigationLink
变为FlowLink
。Route
枚举结合了目标数据和展示样式信息。FlowLink
创建时需要指定路由样式,如.push
、.sheet
或.cover
。
示例代码
附加功能
FlowNavigator:通过环境访问当前路由数组,并使用便捷方法更新它。
便捷方法:提供了多种便捷方法,如
push
、presentSheet
、goBack
等,简化导航操作。深度链接:解决了SwiftUI在处理深层导航链接时的限制。
绑定:支持与屏幕状态的绑定,允许屏幕自身更新其在路由数组中的状态。
项目地址
或许喜欢
Atributika:Swift库将HTML风格文本转换为NSAttributedString
Atributika是一个Swift库,能够识别和样式化HTML风格标签、链接、电话号码等,并生成NSAttributedString,支持iOS、tvOS、watchOS和macOS。
最近更新 2024-12-09
WaterTracker: 跨平台纯SwiftUI开发的喝水追踪应用
WaterTracker是一款跨iOS、iPadOS和watchOS平台的喝水追踪应用,使用SwiftUI开发,支持HealthKit和CloudKit数据同步,无广告、无内购。
最近更新 2024-12-09
ShuffleIt:SwiftUI自定义堆叠视图与动画库
ShuffleIt是一个SwiftUI库,提供多种自定义堆叠视图和优雅的洗牌、滑动、滑动行为,适用于iOS、macOS、watchOS和tvOS。
最近更新 2024-12-09