SwiftUIMaterialTabs - SwiftUI实现的Material 3风格标签和粘性头部库





项目名称:SwiftUIMaterialTabs

项目简介

SwiftUIMaterialTabs是一个纯SwiftUI库,集成了Material 3风格的标签(Material Tabs)和粘性头部(Sticky Header)功能。该库支持iOS 17.0+,Xcode 15.0+和Swift 5.9+,允许开发者在他们的应用中轻松实现Material Design 3中的标签样式和粘性头部效果。

功能特点

  • Material 3风格标签:支持主标签(Primary)和次标签(Secondary)风格,以及自定义标签。

  • 粘性头部效果:支持粘性头部效果,如淡出、收缩和视差效果,也可以创建自己独特的效果。

  • Combine Publisher:使用Combine Publisher订阅CoinCapService,从ViewModel层响应新数据并通过单一管道更新UI。

  • 无Dock图标:应用作为菜单栏代理运行,无需主应用窗口和Dock图标。

  • 实时追踪:实时追踪加密货币数据,并具备自动重连机制。

安装

通过Swift Package Manager安装SwiftUIMaterialTabs。在Xcode中,导航到File | Add Package Dependency...,粘贴此仓库的URL到搜索字段,并点击"Add Package"。

基本使用

struct BasicTabView: View {
    enum Tab: Hashable {
        case first
        case second
    }

    @State var selectedTab: Tab = .first

    var body: some View {
        MaterialTabs(
            selectedTab: $selectedTab,
            headerTitle: { context in
                Text("Header Title")
                    .padding()
            },
            headerTabBar: { context in
                MaterialTabBar(selectedTab: $selectedTab, sizing: .equalWidth, context: context)
            },
            headerBackground: { context in
                Color.yellow
            },
            content: {
                Text("First Tab Content")
                    .materialTabItem(
                        tab: Tab.first,
                        label: .primary("First", icon: Image(systemName: "car"))
                    )
                Text("Second Tab Content")
                    .materialTabItem(
                        tab: Tab.second,
                        label: .primary("Second", icon: Image(systemName: "sailboat"))
                    )
            }
        )
    }
}

扩展

SwiftUIMaterialTabs作为一个开源项目,开发者可以在此基础上增加更多功能,比如支持更多的Material Design组件,或者增加对暗黑模式的支持。此外,项目也可以作为学习SwiftUI和Material Design在iOS应用开发中应用的实例,对于希望深入了解这些技术的开发人员来说,是一个很好的学习资源。

或许喜欢

WaterTracker: 跨平台纯SwiftUI开发的喝水追踪应用

WaterTracker是一款跨iOS、iPadOS和watchOS平台的喝水追踪应用,使用SwiftUI开发,支持HealthKit和CloudKit数据同步,无广告、无内购。

最近更新 2024-12-09

SwiftUIMasonry:SwiftUI实现的Pinterest风格布局视图

SwiftUIMasonry是一个SwiftUI库,提供水平和垂直的Pinterest风格布局视图,支持动态行数和列数,以及自定义间距和对齐。

最近更新 2024-12-09

swiftui-navigation-transitions - SwiftUI导航过渡效果自定义库

swiftui-navigation-transitions库为SwiftUI的NavigationView和NavigationStack提供完全自定义的推送和弹出过渡效果。

最近更新 2024-12-09

热榜

Made with in Shangrao,China By 老雷

Copyright © devler.cn 1987 - Present

赣ICP备19009883号-1