feat(series-main): 시리즈 전체보기 페이지 추가

- 홈, 요일별, 장르별 탭 추가
- 홈 리스트 UI 및 데이터
- 요일별 UI 및 데이터
This commit is contained in:
2025-11-13 18:27:04 +09:00
parent fba6d86018
commit 907b718a3a
20 changed files with 1141 additions and 17 deletions

View File

@@ -26,13 +26,16 @@ import com.zhpan.indicator.enums.IndicatorSlideMode
import com.zhpan.indicator.enums.IndicatorStyle
import kr.co.vividnext.sodalive.R
import kr.co.vividnext.sodalive.audio_content.AudioContentPlayService
import kr.co.vividnext.sodalive.audio_content.all.AudioContentAllActivity
import kr.co.vividnext.sodalive.audio_content.all.AudioContentNewAllActivity
import kr.co.vividnext.sodalive.audio_content.box.AudioContentBoxActivity
import kr.co.vividnext.sodalive.audio_content.detail.AudioContentDetailActivity
import kr.co.vividnext.sodalive.audio_content.main.AudioContentBannerType
import kr.co.vividnext.sodalive.audio_content.main.banner.AudioContentMainBannerAdapter
import kr.co.vividnext.sodalive.audio_content.player.AudioContentPlayerService
import kr.co.vividnext.sodalive.audio_content.series.SeriesListAllActivity
import kr.co.vividnext.sodalive.audio_content.series.detail.SeriesDetailActivity
import kr.co.vividnext.sodalive.audio_content.series.main.SeriesMainActivity
import kr.co.vividnext.sodalive.audio_content.upload.AudioContentUploadActivity
import kr.co.vividnext.sodalive.audition.AuditionActivity
import kr.co.vividnext.sodalive.base.BaseFragment
@@ -646,7 +649,10 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
// ‘오직 보이스온에서만’ 전체보기: isOriginal=true로 시리즈 전체보기 화면 진입
if (SharedPreferenceManager.token.isNotBlank()) {
startActivity(
Intent(requireContext(), kr.co.vividnext.sodalive.audio_content.series.SeriesListAllActivity::class.java).apply {
Intent(
requireContext(),
SeriesListAllActivity::class.java
).apply {
putExtra(kr.co.vividnext.sodalive.common.Constants.EXTRA_IS_ORIGINAL, true)
}
)
@@ -791,7 +797,7 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
outRect.right = 2.5f.dpToPx().toInt()
}
seriesDayOfWeekAdapter.itemCount - 1 -> {
dayOfWeekAdapter.itemCount - 1 -> {
outRect.left = 2.5f.dpToPx().toInt()
outRect.right = 0
}
@@ -804,6 +810,21 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
}
})
rvDayOfWeek.adapter = dayOfWeekAdapter
binding.tvSeriesDayOfWeekAll.setOnClickListener {
if (SharedPreferenceManager.token.isNotBlank()) {
startActivity(
Intent(
requireContext(),
SeriesMainActivity::class.java
).apply {
putExtra(Constants.EXTRA_AUDIO_CONTENT_FREE, true)
}
)
} else {
(requireActivity() as MainActivity).showLoginActivity()
}
}
}
private fun setupPopularCharacters() {
@@ -1127,7 +1148,7 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
binding.tvFreeContentAll.setOnClickListener {
if (SharedPreferenceManager.token.isNotBlank()) {
startActivity(
Intent(requireContext(), kr.co.vividnext.sodalive.audio_content.all.AudioContentAllActivity::class.java).apply {
Intent(requireContext(), AudioContentAllActivity::class.java).apply {
putExtra(Constants.EXTRA_AUDIO_CONTENT_FREE, true)
}
)
@@ -1211,7 +1232,10 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
binding.tvPointContentAll.setOnClickListener {
if (SharedPreferenceManager.token.isNotBlank()) {
startActivity(
Intent(requireContext(), kr.co.vividnext.sodalive.audio_content.all.AudioContentAllActivity::class.java).apply {
Intent(
requireContext(),
AudioContentAllActivity::class.java
).apply {
putExtra(Constants.EXTRA_AUDIO_CONTENT_POINT_ONLY, true)
}
)
@@ -1229,7 +1253,10 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
recommendContentAdapter = HomeContentAdapter(onClickItem = {
if (SharedPreferenceManager.token.isNotBlank()) {
startActivity(
Intent(requireContext(), AudioContentDetailActivity::class.java).apply {
Intent(
requireContext(),
AudioContentDetailActivity::class.java
).apply {
putExtra(Constants.EXTRA_AUDIO_CONTENT_ID, it)
}
)