[Android] ViewPager2로 TabLayout 구성하기
·
Android/UI
한 화면에 여러 콘텐츠를 보여주기 위해 다양한 앱에서 TabLayout과 ViewPager를 사용한다.이 두 가지 기능을 사용하면 탭을 클릭하거나 스와이프를 하여 콘텐츠를 변경할 수 있다.TabLayoutMediator를 사용하여 해당 기능을 구현해 보려고 한다. 예제로 4개의 탭에 각 탭을 구분할 수 있도록 '첫번째' ~ '네번째'라고 텍스트가 적힌 프로젝트를 만들어봤다.TabLayout 설정/** * TabLayout 설정 */private fun faqTabInit() { TabLayoutMediator(mBinding.tabMain, mBinding.vpMain) { tab, pos -> tab.text = pos.toString() when (pos) { ..
[Android] Fragment 하나로 TabLayout 구성하기
·
Android/UI
보통 TabLayout을 사용할 때 ViewPager를 쓰곤 하는데, ViewPager를 사용하려면 노출할 화면 수만큼 Fragment를 만들어야 한다.그런데 각 화면들의 구성이 똑같다면 굳이 여러 개의 Fragment를 만들지 않고 하나의 Fragment를 재활용하는 것이 낫다고 생각했다.탭을 클릭했을 때 beginTransaction으로 Fragment을 생성하고 데이터만 바꿔주면 된다. 예제로 4개의 탭에 각 탭을 구분할 수 있도록 '첫번째' ~ '네번째'라고 텍스트가 적힌 프로젝트를 만들어봤다.TabLayout에 탭 세팅mBinding.tabMain.addTab(mBinding.tabMain.newTab().setText("첫번째"))mBinding.tabMain.addTab(mBinding.ta..