From 280ce4bedae188a5dc5e6dcb9020be6535f23ded Mon Sep 17 00:00:00 2001 From: Yu Sung Date: Sat, 15 Nov 2025 01:50:58 +0900 Subject: [PATCH] =?UTF-8?q?feat(series-all):=20=EC=8B=9C=EB=A6=AC=EC=A6=88?= =?UTF-8?q?=20=EC=A0=84=EC=B2=B4=EB=B3=B4=EA=B8=B0=20=ED=83=AD=20=EA=B5=AC?= =?UTF-8?q?=EC=84=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Main/ByGenre/SeriesMainByGenreView.swift | 2 +- .../DayOfWeek/SeriesMainDayOfWeekView.swift | 2 +- .../Series/Main/Home/SeriesMainHomeView.swift | 2 +- .../Content/Series/Main/SeriesMainView.swift | 58 ++++++++++++++++++- 4 files changed, 59 insertions(+), 5 deletions(-) diff --git a/SodaLive/Sources/Content/Series/Main/ByGenre/SeriesMainByGenreView.swift b/SodaLive/Sources/Content/Series/Main/ByGenre/SeriesMainByGenreView.swift index ffcbb81..50c2cdf 100644 --- a/SodaLive/Sources/Content/Series/Main/ByGenre/SeriesMainByGenreView.swift +++ b/SodaLive/Sources/Content/Series/Main/ByGenre/SeriesMainByGenreView.swift @@ -9,7 +9,7 @@ import SwiftUI struct SeriesMainByGenreView: View { var body: some View { - Text(/*@START_MENU_TOKEN@*/"Hello, World!"/*@END_MENU_TOKEN@*/) + Text("시리즈 전체보기 장르별") } } diff --git a/SodaLive/Sources/Content/Series/Main/DayOfWeek/SeriesMainDayOfWeekView.swift b/SodaLive/Sources/Content/Series/Main/DayOfWeek/SeriesMainDayOfWeekView.swift index aa4541c..d6d7ecd 100644 --- a/SodaLive/Sources/Content/Series/Main/DayOfWeek/SeriesMainDayOfWeekView.swift +++ b/SodaLive/Sources/Content/Series/Main/DayOfWeek/SeriesMainDayOfWeekView.swift @@ -9,7 +9,7 @@ import SwiftUI struct SeriesMainDayOfWeekView: View { var body: some View { - Text(/*@START_MENU_TOKEN@*/"Hello, World!"/*@END_MENU_TOKEN@*/) + Text("시리즈 전체보기 요일별") } } diff --git a/SodaLive/Sources/Content/Series/Main/Home/SeriesMainHomeView.swift b/SodaLive/Sources/Content/Series/Main/Home/SeriesMainHomeView.swift index 7250731..f37776d 100644 --- a/SodaLive/Sources/Content/Series/Main/Home/SeriesMainHomeView.swift +++ b/SodaLive/Sources/Content/Series/Main/Home/SeriesMainHomeView.swift @@ -9,7 +9,7 @@ import SwiftUI struct SeriesMainHomeView: View { var body: some View { - Text(/*@START_MENU_TOKEN@*/"Hello, World!"/*@END_MENU_TOKEN@*/) + Text("시리즈 전체보기 홈") } } diff --git a/SodaLive/Sources/Content/Series/Main/SeriesMainView.swift b/SodaLive/Sources/Content/Series/Main/SeriesMainView.swift index 02d0ee3..dc32946 100644 --- a/SodaLive/Sources/Content/Series/Main/SeriesMainView.swift +++ b/SodaLive/Sources/Content/Series/Main/SeriesMainView.swift @@ -8,9 +8,63 @@ 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 "홈" + case .dayOfWeek: return "요일별" + case .byGenre: return "장르별" + } + } + } + + @State private var selectedTab: InnerTab = .home + var body: some View { - BaseView { - Text("시리즈 전체보기") + 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) + } + } } } }