쉽게 안드로이드 코틀린 탭레이아웃 만들기

ANKT·2022년 4월 13일
2

처음 탭레이아웃을 사용해보고 싶었을때 구글에 찾아보니 여러 방법이 있지만 저를 이해시키지 못했고 저는 여기에 몇 일을 사용을 해 이해를 했습니다... 그래서 제가 배울때의 마음으로 한번 적어보겠습니다.

안녕하세요! 😀

시작할때 새로운 파트를 넣어보려고 합니다.

오늘의 한곡
𝐋𝐢𝐤𝐞 𝐌𝐲 𝐅𝐚𝐭𝐡𝐞𝐫 - Jax
우연히 들어본 노래인데 좋아서 계속 듣고 있습니다


위에 있는 탭레이아웃은 제가 만든 탭레이아웃이고 이거를 기준으로 설명을 드리도록 하겠습니다!

뿌리 형식 기억해주세요!

이거 때문에 많이 고생을 했습니다. 제가 생각 했던거는 메인과 고양이만 있으면 메인을 강아지로 만들고 붙이면 안될까?? 였는데 정답은 당연히 안됩니다. 둘이 루프를 돌다가 에러 뜨면서 꺼져서 메인은 두고 프래그먼트를 두개 만들어 사용을 해야합니다

만드는 방법

1. 본인이 원하는 갯수만큼 프래그먼트 만들기


저는 강아지/고양이를 원해서 두개의 프래그먼트를 만들었습니다.
레이아웃도 똑같이 두개 만들어주세요

2. 메인.kt 코드

val dogFragment = MainDogTypeFragment()
val catFragment = MainCatTypeFragment()

val fragments = arrayListOf<Fragment>(dogFragment, catFragment)
val tabAdapter = object : FragmentStateAdapter(this) {

override fun getItemCount(): Int {
	return fragments.size
}
override fun createFragment(position: Int): Fragment {
	return fragments[position]
		}
	}
    
binding.viewPager2.adapter = tabAdapter
	TabLayoutMediator(binding.mainTypeTabLayout, binding.viewPager2) {tab,position ->
		when (position) {
			0 -> tab.setText(R.string.tabDogText)
				else -> tab.setText(R.string.tabCatText)
            }
        }.attach()

각 프래그먼트를 지정해주고
fragments로 묶어서 어뎁터를 만듭니다.

저는 따로 파일을 만들기 싫어서 하나로 작업 했습니다.
뷰페이저가 있으시면 밑에 보이는 것처럼 뷰페이저 연결 해주시면 됩니다.
이렇게만 하시면 끝입니다!!!

profile
Law of Attraction

0개의 댓글