Files
sodalive-ios/SodaLive/Sources/Content/Series/Main/SeriesMainView.swift

75 lines
2.4 KiB
Swift

//
// SeriesMainView.swift
// SodaLive
//
// Created by klaus on 11/14/25.
//
import SwiftUI
struct SeriesMainView: View {
private enum InnerTab: Int, CaseIterable {
case home = 0
case dayOfWeek = 1
case byGenre = 2
var title: String {
switch self {
case .home: return I18n.SeriesMain.home
case .dayOfWeek: return I18n.SeriesMain.dayOfWeek
case .byGenre: return I18n.SeriesMain.byGenre
}
}
}
@State private var selectedTab: InnerTab = .home
var body: some View {
NavigationView {
BaseView {
VStack(spacing: 0) {
DetailNavigationBar(title: "시리즈 전체보기")
// ( / )
HStack(spacing: 0) {
ChatInnerTab(
title: InnerTab.home.title,
isSelected: selectedTab == .home,
onTap: { if selectedTab != .home { selectedTab = .home } }
)
ChatInnerTab(
title: InnerTab.dayOfWeek.title,
isSelected: selectedTab == .dayOfWeek,
onTap: { if selectedTab != .dayOfWeek { selectedTab = .dayOfWeek } }
)
ChatInnerTab(
title: InnerTab.byGenre.title,
isSelected: selectedTab == .byGenre,
onTap: { if selectedTab != .byGenre { selectedTab = .byGenre } }
)
}
.padding(.bottom, 12)
Group {
switch selectedTab {
case .home:
SeriesMainHomeView()
case .dayOfWeek:
SeriesMainDayOfWeekView()
case .byGenre:
SeriesMainByGenreView()
}
}
.frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .topLeading)
}
}
}
}
}
#Preview {
SeriesMainView()
}