From fa91b1719ad4372b9ec90b0611233dbbbc693fa1 Mon Sep 17 00:00:00 2001 From: Sue Cho Date: Wed, 9 Dec 2020 01:14:06 +0900 Subject: [PATCH] =?UTF-8?q?[iOS]=20Feat:=20TrackRow=20=EC=84=A0=ED=83=9D?= =?UTF-8?q?=20=EC=8B=9C=20UpNext=EC=97=90=20=EA=B3=A1=20=EC=B6=94=EA=B0=80?= =?UTF-8?q?=20#34?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- MiniVibe/MiniVibe/Models/NowPlaying.swift | 3 +-- MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowA.swift | 6 ++++++ MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowB.swift | 4 ++++ MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowC.swift | 6 ++++++ MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowD.swift | 6 ++++++ MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowE.swift | 6 ++++++ 6 files changed, 29 insertions(+), 2 deletions(-) diff --git a/MiniVibe/MiniVibe/Models/NowPlaying.swift b/MiniVibe/MiniVibe/Models/NowPlaying.swift index cc15f3ae..14021a55 100644 --- a/MiniVibe/MiniVibe/Models/NowPlaying.swift +++ b/MiniVibe/MiniVibe/Models/NowPlaying.swift @@ -10,8 +10,7 @@ import Foundation class NowPlaying: ObservableObject { @Published var isPlaying: Bool = false @Published var isPlayerPresented: Bool = false - @Published var upNext = [Track]() + @Published var upNext = [Int]() // Track.id } - // 비어있다면? 기본 값을 보여주어야 하지 않을까 diff --git a/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowA.swift b/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowA.swift index 81e5cbf2..0e22cad7 100644 --- a/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowA.swift +++ b/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowA.swift @@ -8,6 +8,7 @@ import SwiftUI struct TrackRowA: View { + @EnvironmentObject private var nowPlaying: NowPlaying @Binding var isMenuOpen: Bool let order: Int @@ -34,6 +35,11 @@ struct TrackRowA: View { .font(.subheadline) .foregroundColor(.secondary) } + // let track: TrackInfo 와 같이 생기면 아래 onTapGesture 추가하기 + // upnext에 추가하는 코드임 +// .onTapGesture { +// nowPlaying.upNext.append(track.id) +// } } .scaledToFit() diff --git a/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowB.swift b/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowB.swift index abd3e888..4f0d70cb 100644 --- a/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowB.swift +++ b/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowB.swift @@ -8,6 +8,7 @@ import SwiftUI struct TrackRowB: View { + @EnvironmentObject private var nowPlaying: NowPlaying let track: TrackInfo var body: some View { @@ -25,6 +26,9 @@ struct TrackRowB: View { .font(.system(size: 13)) .foregroundColor(.secondary) } + .onTapGesture { + nowPlaying.upNext.append(track.id) + } Spacer() } diff --git a/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowC.swift b/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowC.swift index f159687d..26c06b24 100644 --- a/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowC.swift +++ b/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowC.swift @@ -8,6 +8,7 @@ import SwiftUI struct TrackRowC: View { + @EnvironmentObject private var nowPlaying: NowPlaying let title: String let artist: String let menuButtonAction: () -> Void @@ -26,6 +27,11 @@ struct TrackRowC: View { .font(.subheadline) .foregroundColor(.secondary) } + // let track: TrackInfo 와 같이 생기면 아래 onTapGesture 추가하기 + // upnext에 추가하는 코드임 +// .onTapGesture { +// nowPlaying.upNext.append(track.id) +// } Spacer() diff --git a/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowD.swift b/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowD.swift index 05476821..9b2f1f03 100644 --- a/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowD.swift +++ b/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowD.swift @@ -8,6 +8,7 @@ import SwiftUI struct TrackRowD: View { + @EnvironmentObject private var nowPlaying: NowPlaying let order: Int let title: String let artist: String @@ -25,6 +26,11 @@ struct TrackRowD: View { .font(.title3) } .padding(.vertical, 10) + // let track: TrackInfo 와 같이 생기면 아래 onTapGesture 추가하기 + // upnext에 추가하는 코드임 +// .onTapGesture { +// nowPlaying.upNext.append(track.id) +// } Spacer() diff --git a/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowE.swift b/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowE.swift index b390b11f..b2554fba 100644 --- a/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowE.swift +++ b/MiniVibe/MiniVibe/Views/Common/TrackRows/TrackRowE.swift @@ -8,6 +8,7 @@ import SwiftUI struct TrackRowE: View { + @EnvironmentObject private var nowPlaying: NowPlaying let order: Int let title: String let artist: String @@ -34,6 +35,11 @@ struct TrackRowE: View { } } .scaledToFit() + // let track: TrackInfo 와 같이 생기면 아래 onTapGesture 추가하기 + // upnext에 추가하는 코드임 +// .onTapGesture { +// nowPlaying.upNext.append(track.id) +// } Spacer() }