SwiftUI 标签栏视图

Swift 5.5 platform iOS 15 | macOS 12.1

SwiftUI 标签式界面。可自定义的 SwiftUI.TabView 替代品。

iOS macOS
Example iOS app light modeExample iOS app dark mode Example macOS app light modeExample macOS app dark mode

▶️使用方法

使用 Swift Package Manager 将其作为依赖项添加到你的项目中。

嵌入到你的 SwiftUI 视图中

import SwiftUITabsView

struct ContentView: View {
  var body: some View {
    TabsView(
      tabs: /* [Tab]  */,
      selectedTab: /* Binding<Tab> */,
      barPosition: /* ToolbarPosition */,
      ignoresKeyboard: /* Bool */,
      frameChangeAnimation: /* Animation? */,
      tabsBar: /* @ViewBuilder @escaping ([Tab], Binding<Tab>) -> TabsBar */,
      content: /* @ViewBuilder @escaping (Tab) -> TabContent */
    )
  }
}

查看文档注释和包含的示例应用程序

如果你的标签页内容视图嵌入在 NavigationView 中,请使用 tabsBarSafeAreaInset 修饰符来应用与标签栏匹配的安全区域插图。

TabsView(
  /* ... */
  content: { tab in 
    NavigationView {
      ContentView(for: tab)
        .tabsBarSafeAreaInset()
    }
  }
)

🛠 开发

在 Xcode (≥13.1) 中打开 SwiftUITabsView.xcworkspace 进行开发。

使用 ExampleApp-iOS scheme 构建并运行 iOS 示例应用程序。

使用 ExampleApp-macOS scheme 构建并运行 macOS 示例应用程序。

☕️ 你喜欢这个项目吗?

Buy Me A Coffee

考虑支持进一步的开发并请我喝一杯咖啡。

 

📄 许可证

版权所有 © 2022 Dariusz Rybicki Darrarski

许可证: MIT