StatefulTabView SwiftUI标签页状态保留与定制化配置
状态保留的 Tab 切换在 SwiftUI 里一直是个小痛点,StatefulTabView就挺好地了这个问题。每个标签页的状态都能完整保留,不会因为切换而重置,像是滚动位置、输入内容,全都还在,体验丝滑。
直接基于UITabBarController封装,SwiftUI 项目里用起来也顺手。支持 iOS 13+,配合Swift Package Manager引入也方便,代码维护得还不错,master 分支始终是最新版本。
除了状态保留,它在TabBar 外观定制上也给了挺多自由度:自定义色调、背景色、图标、标题都能改。想做个风格统一的 App UI,不用再手动绕一大圈。
使用上也简单,比如设置当前选中的标签只要传个@State
变量进去就行:
@State private var selectedTab = 0
var body: some View {
StatefulTabView(selection: $selectedTab) {
Text("首页").tabItem {
Image(systemName: "house")
Text("Home")
}.tag(0)
Text("设置").tabItem {
Image(systemName: "gear")
Text("Settings")
}.tag(1)
}
}
嗯,如果你做的是多标签的 App,而且用户在标签页之间来回切换还内容不丢,这库真的挺香的。
提醒一下,安装方式是通过 Swift Package Manager 加 https://github.com/NicholasBellucci/StatefulTabView
,选 master 分支就好,Xcode 11.2+ 能跑。
24.43KB
文件大小:
评论区