재생목록과 구매목록이 탭이 있는 내 보관함 페이지 추가
This commit is contained in:
@@ -0,0 +1,63 @@
|
||||
package kr.co.vividnext.sodalive.audio_content.box
|
||||
|
||||
import android.widget.LinearLayout
|
||||
import com.google.android.material.tabs.TabLayout
|
||||
import kr.co.vividnext.sodalive.R
|
||||
import kr.co.vividnext.sodalive.audio_content.playlist.AudioContentPlaylistListFragment
|
||||
import kr.co.vividnext.sodalive.base.BaseActivity
|
||||
import kr.co.vividnext.sodalive.databinding.ActivityAudioContentBoxBinding
|
||||
|
||||
class AudioContentBoxActivity : BaseActivity<ActivityAudioContentBoxBinding>(
|
||||
ActivityAudioContentBoxBinding::inflate
|
||||
) {
|
||||
override fun setupView() {
|
||||
setupToolbar()
|
||||
setupTabs()
|
||||
|
||||
supportFragmentManager.beginTransaction()
|
||||
.replace(R.id.fl_container, AudioContentPlaylistListFragment())
|
||||
.commit()
|
||||
}
|
||||
|
||||
private fun setupToolbar() {
|
||||
binding.toolbar.tvBack.text = "내 보관함"
|
||||
binding.toolbar.tvBack.setOnClickListener { finish() }
|
||||
}
|
||||
|
||||
private fun setupTabs() {
|
||||
val tabs = binding.tabs
|
||||
tabs.addTab(tabs.newTab().setText("재생목록"))
|
||||
tabs.addTab(tabs.newTab().setText("구매목록"))
|
||||
|
||||
tabs.addOnTabSelectedListener(object : TabLayout.OnTabSelectedListener {
|
||||
override fun onTabSelected(tab: TabLayout.Tab) {
|
||||
tab.view.isSelected = true
|
||||
|
||||
when (tab.position) {
|
||||
0 -> supportFragmentManager.beginTransaction()
|
||||
.replace(R.id.fl_container, AudioContentPlaylistListFragment())
|
||||
.commit()
|
||||
|
||||
1 -> {}
|
||||
}
|
||||
}
|
||||
|
||||
override fun onTabUnselected(tab: TabLayout.Tab) {
|
||||
tab.view.isSelected = false
|
||||
}
|
||||
|
||||
override fun onTabReselected(tab: TabLayout.Tab) {
|
||||
}
|
||||
})
|
||||
|
||||
val tabStrip = tabs.getChildAt(0) as LinearLayout
|
||||
for (i in 0 until tabStrip.childCount) {
|
||||
val tab = tabStrip.getChildAt(i)
|
||||
val params = tab.layoutParams as LinearLayout.LayoutParams
|
||||
params.setMargins(12, 0, 12, 0)
|
||||
params.height = LinearLayout.LayoutParams.WRAP_CONTENT
|
||||
tab.layoutParams = params
|
||||
tab.minimumHeight = 0
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -19,6 +19,7 @@ import kr.co.vividnext.sodalive.R
|
||||
import kr.co.vividnext.sodalive.audio_content.all.AudioContentNewAllActivity
|
||||
import kr.co.vividnext.sodalive.audio_content.all.AudioContentRankingAllActivity
|
||||
import kr.co.vividnext.sodalive.audio_content.all.by_theme.AudioContentAllByThemeActivity
|
||||
import kr.co.vividnext.sodalive.audio_content.box.AudioContentBoxActivity
|
||||
import kr.co.vividnext.sodalive.audio_content.curation.AudioContentCurationActivity
|
||||
import kr.co.vividnext.sodalive.audio_content.detail.AudioContentDetailActivity
|
||||
import kr.co.vividnext.sodalive.audio_content.main.banner.AudioContentMainBannerAdapter
|
||||
@@ -127,7 +128,7 @@ class AudioContentMainFragment : BaseFragment<FragmentAudioContentMainBinding>(
|
||||
startActivity(
|
||||
Intent(
|
||||
requireContext(),
|
||||
AudioContentOrderListActivity::class.java
|
||||
AudioContentBoxActivity::class.java
|
||||
)
|
||||
)
|
||||
}
|
||||
@@ -352,7 +353,7 @@ class AudioContentMainFragment : BaseFragment<FragmentAudioContentMainBinding>(
|
||||
|
||||
binding.rvMyStash.adapter = orderListAdapter
|
||||
binding.tvMyStashViewAll.setOnClickListener {
|
||||
startActivity(Intent(requireContext(), AudioContentOrderListActivity::class.java))
|
||||
startActivity(Intent(requireContext(), AudioContentBoxActivity::class.java))
|
||||
}
|
||||
|
||||
orderListViewModel.orderListLiveData.observe(viewLifecycleOwner) {
|
||||
|
||||
@@ -68,7 +68,7 @@ class AudioContentPlaylistListFragment : BaseFragment<FragmentAudioContentPlayli
|
||||
}
|
||||
|
||||
viewModel.totalCountLiveData.observe(viewLifecycleOwner) {
|
||||
binding.tvCreatePlaylist.text = "${it}개"
|
||||
binding.tvTotalCount.text = "${it}개"
|
||||
}
|
||||
|
||||
viewModel.playlistLiveData.observe(viewLifecycleOwner) {
|
||||
|
||||
@@ -1,12 +1,15 @@
|
||||
package kr.co.vividnext.sodalive.audio_content.playlist
|
||||
|
||||
import androidx.annotation.Keep
|
||||
import com.google.gson.annotations.SerializedName
|
||||
|
||||
@Keep
|
||||
data class GetPlaylistsResponse(
|
||||
@SerializedName("totalCount") val totalCount: Int,
|
||||
@SerializedName("items") val items: List<GetPlaylistsItem>
|
||||
)
|
||||
|
||||
@Keep
|
||||
data class GetPlaylistsItem(
|
||||
@SerializedName("id") val id: Long,
|
||||
@SerializedName("title") val title: String,
|
||||
|
||||
Reference in New Issue
Block a user