-
Create a new SwiftView file called "HomeView".
-
Replace the ContentView() with HomeView() in YourAppNameApp.swift (In this case, my project is called ShipiOS. Thus, file name is ShipiOSApp.swift)
var body: some Scene {
WindowGroup {
HomeView()
}
}
- Lastly, add the following code in your HomeView() file:
struct HomeView: View {
@State private var selectedTab = 0 // Track the selected tab
let generator = UIImpactFeedbackGenerator(style: .light) // For Haptics
@EnvironmentObject var userCommonData: CommonData
var body: some View {
TabView(selection: $selectedTab) {
ContentView() // Replace with your view
.tabItem {
Label("Home", systemImage: "house")
}
.tag(0)
SecondView() // Replace with your view
.tabItem {
Label("Chats", systemImage: "tray")
}
.tag(1)
ThirdView() // Replace with your view
.tabItem {
Label("Profile", systemImage: "gearshape")
}
.tag(2)
}
.accentColor(Color("AppSecondaryColor"))
.onChange(of: selectedTab) {
generator.impactOccurred()
}
}
}