parent
b12200dd9b
commit
8cb7287b5d
|
@ -153,4 +153,6 @@ enum AppStep {
|
||||||
case newReplayContentAll
|
case newReplayContentAll
|
||||||
|
|
||||||
case introduceCreatorAll
|
case introduceCreatorAll
|
||||||
|
|
||||||
|
case message
|
||||||
}
|
}
|
||||||
|
|
|
@ -233,6 +233,9 @@ struct ContentView: View {
|
||||||
case .introduceCreatorAll:
|
case .introduceCreatorAll:
|
||||||
ContentMainIntroduceCreatorAllView()
|
ContentMainIntroduceCreatorAllView()
|
||||||
|
|
||||||
|
case .message:
|
||||||
|
MessageView()
|
||||||
|
|
||||||
default:
|
default:
|
||||||
EmptyView()
|
EmptyView()
|
||||||
.frame(width: 0, height: 0, alignment: .topLeading)
|
.frame(width: 0, height: 0, alignment: .topLeading)
|
||||||
|
|
|
@ -13,7 +13,7 @@ struct BottomTabView: View {
|
||||||
|
|
||||||
var body: some View {
|
var body: some View {
|
||||||
HStack(spacing: 0) {
|
HStack(spacing: 0) {
|
||||||
let tabWidth = width / 5
|
let tabWidth = width / 4
|
||||||
|
|
||||||
TabButton(
|
TabButton(
|
||||||
title: "콘텐츠",
|
title: "콘텐츠",
|
||||||
|
@ -90,31 +90,6 @@ struct BottomTabView: View {
|
||||||
width: tabWidth
|
width: tabWidth
|
||||||
)
|
)
|
||||||
|
|
||||||
TabButton(
|
|
||||||
title: "메시지",
|
|
||||||
action: {
|
|
||||||
if currentTab != .message {
|
|
||||||
currentTab = .message
|
|
||||||
}
|
|
||||||
},
|
|
||||||
image: {
|
|
||||||
currentTab == .message ?
|
|
||||||
"ic_tabbar_message_selected" :
|
|
||||||
"ic_tabbar_message_normal"
|
|
||||||
},
|
|
||||||
fontName: {
|
|
||||||
currentTab == .message ?
|
|
||||||
Font.bold.rawValue :
|
|
||||||
Font.medium.rawValue
|
|
||||||
},
|
|
||||||
color: {
|
|
||||||
currentTab == .message ?
|
|
||||||
Color.button :
|
|
||||||
Color.graybb
|
|
||||||
},
|
|
||||||
width: tabWidth
|
|
||||||
)
|
|
||||||
|
|
||||||
TabButton(
|
TabButton(
|
||||||
title: "마이",
|
title: "마이",
|
||||||
action: {
|
action: {
|
||||||
|
|
|
@ -22,7 +22,6 @@ struct HomeView: View {
|
||||||
|
|
||||||
private let liveView = LiveView()
|
private let liveView = LiveView()
|
||||||
private let audition = AuditionView()
|
private let audition = AuditionView()
|
||||||
private let messageView = MessageView()
|
|
||||||
private let contentView = ContentMainTabHomeView()
|
private let contentView = ContentMainTabHomeView()
|
||||||
|
|
||||||
@State private var isShowPlayer = false
|
@State private var isShowPlayer = false
|
||||||
|
@ -44,10 +43,6 @@ struct HomeView: View {
|
||||||
.frame(width: viewModel.currentTab == .audition ? proxy.size.width : 0)
|
.frame(width: viewModel.currentTab == .audition ? proxy.size.width : 0)
|
||||||
.opacity(viewModel.currentTab == .audition ? 1.0 : 0.01)
|
.opacity(viewModel.currentTab == .audition ? 1.0 : 0.01)
|
||||||
|
|
||||||
messageView
|
|
||||||
.frame(width: viewModel.currentTab == .message ? proxy.size.width : 0)
|
|
||||||
.opacity(viewModel.currentTab == .message ? 1.0 : 0.01)
|
|
||||||
|
|
||||||
if viewModel.currentTab == .mypage {
|
if viewModel.currentTab == .mypage {
|
||||||
MyPageView()
|
MyPageView()
|
||||||
}
|
}
|
||||||
|
@ -255,7 +250,7 @@ struct HomeView: View {
|
||||||
|
|
||||||
DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) {
|
DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) {
|
||||||
if value > 0 {
|
if value > 0 {
|
||||||
viewModel.currentTab = .message
|
appState.setAppStep(step: .message)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -278,7 +273,9 @@ struct HomeView: View {
|
||||||
}
|
}
|
||||||
.onAppear {
|
.onAppear {
|
||||||
if appState.pushMessageId > 0 {
|
if appState.pushMessageId > 0 {
|
||||||
viewModel.currentTab = .message
|
DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) {
|
||||||
|
appState.setAppStep(step: .message)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,7 +18,7 @@ final class HomeViewModel: ObservableObject {
|
||||||
private let playbackTrackingRepository = PlaybackTrackingRepository()
|
private let playbackTrackingRepository = PlaybackTrackingRepository()
|
||||||
|
|
||||||
enum CurrentTab: String {
|
enum CurrentTab: String {
|
||||||
case content, live, audition, message, mypage
|
case content, live, audition, mypage
|
||||||
}
|
}
|
||||||
|
|
||||||
@Published var currentTab: CurrentTab = AppState.shared.startTab
|
@Published var currentTab: CurrentTab = AppState.shared.startTab
|
||||||
|
|
Loading…
Reference in New Issue