feat(ui): 채팅 탭 추가

This commit is contained in:
2025-08-01 14:47:51 +09:00
parent f6e7229246
commit 3cf57c1f91
6 changed files with 71 additions and 1 deletions

View File

@@ -0,0 +1,18 @@
package kr.co.vividnext.sodalive.chat
import android.os.Bundle
import android.view.View
import kr.co.vividnext.sodalive.base.BaseFragment
import kr.co.vividnext.sodalive.databinding.FragmentChatBinding
class ChatFragment : BaseFragment<FragmentChatBinding>(FragmentChatBinding::inflate) {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
initView()
}
private fun initView() {
// 채팅 화면 초기화 로직
}
}

View File

@@ -35,6 +35,7 @@ import kr.co.vividnext.sodalive.audio_content.player.AudioContentPlayerFragment
import kr.co.vividnext.sodalive.audio_content.player.AudioContentPlayerService
import kr.co.vividnext.sodalive.audio_content.series.detail.SeriesDetailActivity
import kr.co.vividnext.sodalive.base.BaseActivity
import kr.co.vividnext.sodalive.chat.ChatFragment
import kr.co.vividnext.sodalive.common.Constants
import kr.co.vividnext.sodalive.common.LoadingDialog
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
@@ -385,6 +386,17 @@ class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::infl
tab = MainViewModel.CurrentTab.HOME
)
setupTab(
binding = binding.tabChat,
title = "채팅",
imageSrc = R.drawable.ic_tabbar_chat,
colorStateList = ContextCompat.getColorStateList(
applicationContext,
R.color.color_tabbar_title
),
tab = MainViewModel.CurrentTab.CHAT
)
setupTab(
binding = binding.tabLive,
title = "라이브",
@@ -409,6 +421,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::infl
viewModel.currentTab.observe(this) {
setTabSelected(binding.tabHome, isSelected = false)
setTabSelected(binding.tabChat, isSelected = false)
setTabSelected(binding.tabLive, isSelected = false)
setTabSelected(binding.tabMy, isSelected = false)
@@ -418,6 +431,10 @@ class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::infl
setTabSelected(binding.tabHome, isSelected = true)
}
MainViewModel.CurrentTab.CHAT -> {
setTabSelected(binding.tabChat, isSelected = true)
}
MainViewModel.CurrentTab.LIVE -> {
setTabSelected(binding.tabLive, isSelected = true)
}
@@ -474,6 +491,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::infl
MainViewModel.CurrentTab.LIVE -> liveFragment
MainViewModel.CurrentTab.HOME -> HomeFragment()
MainViewModel.CurrentTab.MY -> MyPageFragment()
MainViewModel.CurrentTab.CHAT -> ChatFragment()
}
fragmentTransaction.add(R.id.fl_container, fragment, tag)

View File

@@ -40,7 +40,10 @@ class MainViewModel(
LIVE,
@SerializedName("MY")
MY
MY,
@SerializedName("CHAT")
CHAT
}
private val _currentTab = MutableLiveData(CurrentTab.HOME)