https://github.com/c-villain/wavedtabview
Example how tab view can be customised and animated in SwiftUI
https://github.com/c-villain/wavedtabview
ios13 swiftui swiftui-animation swiftui-animations swiftui-components swiftui-example swiftui-learning tabview
Last synced: 2 months ago
JSON representation
Example how tab view can be customised and animated in SwiftUI
- Host: GitHub
- URL: https://github.com/c-villain/wavedtabview
- Owner: c-villain
- License: mit
- Created: 2022-10-07T16:18:06.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-12-30T14:27:44.000Z (over 2 years ago)
- Last Synced: 2025-01-15T10:05:00.720Z (4 months ago)
- Topics: ios13, swiftui, swiftui-animation, swiftui-animations, swiftui-components, swiftui-example, swiftui-learning, tabview
- Language: Swift
- Homepage: https://t.me/swiftui_dev
- Size: 3.56 MB
- Stars: 2
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# WavedTabView
[](https://swiftpackageindex.com/c-villain/WavedTabView)
[](https://swiftpackageindex.com/c-villain/WavedTabView)
[](https://t.me/lexkraev)
[](https://telegram.dog/swiftui_dev)Tutorial how tab bar can be customised and animated using SwiftUI
Full [demo video](https://t.me/swiftui_dev/194) you may find [here](https://t.me/swiftui_dev/194).
👨🏻💻 Feel free to subscribe to channel **[SwiftUI dev](https://t.me/swiftui_dev)** in telegram.
If you like this repository, please do :star: to make this useful for others.
## Quick start
- upside-waved variant:
![]()
- inside-waved variant:
![]()
- without wave, classical variant:
![]()
## Installation
To install waved tab view attach [WavedTabView.swift](https://github.com/c-villain/WavedTabView/blob/main/WavedTabView.swift) file to your project and call:
```swift
import SwiftUI@main
struct SUIChallengesApp: App {
var body: some Scene {
WindowGroup {
WavedTabView() // <=== HERE!
}
}
}
```
or for example in SceneDelegate:
```swift
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
let contentView = WavedTabView() // // <=== HERE!
if let windowScene = scene as? UIWindowScene {
let window = UIWindow(windowScene: windowScene)
window.rootViewController = UIHostingController(rootView: contentView)
self.window = window
window.makeKeyAndVisible()
}
}
```
### Requirements
- iOS 13.0## Special thanks
to [Dmitriy Soloshenko](https://github.com/DemonSoft) for his contributing.
## Communication
- If you **found a bug**, open an issue or submit a fix via a pull request.
- If you **have a feature request**, open an issue or submit a implementation via a pull request or hit me up on **[email protected]** or **[telegram](https://t.me/lexkraev)**.
- If you **want to contribute**, submit a pull request onto the master branch.