diff --git a/SodaLive/Sources/Live/Room/LiveRoomView.swift b/SodaLive/Sources/Live/Room/LiveRoomView.swift index c84319d..d832c1b 100644 --- a/SodaLive/Sources/Live/Room/LiveRoomView.swift +++ b/SodaLive/Sources/Live/Room/LiveRoomView.swift @@ -277,8 +277,8 @@ struct LiveRoomView: View { ScrollViewReader { proxy in ZStack(alignment: .bottomTrailing) { GeometryReader { proxy in - if let liveRoomInfo = viewModel.liveRoomInfo, viewModel.isBgOn { - KFImage(URL(string: liveRoomInfo.coverImageUrl)) + if let coverImageUrl = viewModel.coverImageUrl, viewModel.isBgOn { + KFImage(URL(string: coverImageUrl)) .resizable() .scaledToFill() .frame(width: proxy.size.width, height: proxy.size.height, alignment: .center) diff --git a/SodaLive/Sources/Live/Room/LiveRoomViewModel.swift b/SodaLive/Sources/Live/Room/LiveRoomViewModel.swift index 677cc30..b8fca5e 100644 --- a/SodaLive/Sources/Live/Room/LiveRoomViewModel.swift +++ b/SodaLive/Sources/Live/Room/LiveRoomViewModel.swift @@ -36,6 +36,8 @@ final class LiveRoomViewModel: NSObject, ObservableObject { @Published var liveRoomInfo: GetRoomInfoResponse? @Published var userProfile: GetLiveRoomUserProfileResponse? + @Published var coverImageUrl: String? + @Published var isLoading = false @Published var errorMessage = "" @Published var reportMessage = "" @@ -256,6 +258,11 @@ final class LiveRoomViewModel: NSObject, ObservableObject { if let data = decoded.data, decoded.success { self.liveRoomInfo = data + + if self.coverImageUrl != data.coverImageUrl { + self.coverImageUrl = data.coverImageUrl + } + self.isActiveRoulette = data.isActiveRoulette self.isLoading = true self.agora.joinChannel(