한 화면에서 좌우로 스와이핑하여 다른 화면이 보여지는 것을 구현해야한다.
viewPager2 추가
보여줄 fragment에 viewpager2를 추가한다.
<androidx.viewpager2.widget.ViewPager2
android:id="@+id/viewPager"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
2개의 화면을 보여줄 예정이므로 fragment_one, fragment_two 추가
각 Fragment.kt 파일과 xml파일을 연결한다.
Adapter 생성
class MenuContentAdapter(fragment: MenuContentFragment) : FragmentStateAdapter(fragment) {
override fun getItemCount(): Int = 2 // 프래그먼트 수
override fun createFragment(position: Int): Fragment {
return when (position) {
0 -> LocationFragment()
1 -> MenuFragment()
else -> throw IllegalArgumentException("Invalid position")
}
}
}
getItemCount로 viewpager내 보여줄 fragment 갯수 지정
createFragment에서 각 Fragment 를 연결시켜주면된다.
'안드로이드스튜디오' 카테고리의 다른 글
android custom switch / androidx.appcompat.widget.SwitchCompat 디자인 적용 안되는 이슈 (1) | 2024.09.20 |
---|---|
[안드로이드/kotlin] RecyclerView 적용하기 (0) | 2024.08.27 |
[안드로이드/Kotlin] Custom progress bar 적용하기 (0) | 2024.08.27 |
[안드로이드] SDK location not found. Define location with an ANDROID_SDK_ROOT environment variable~ 오류 해결 방법 (0) | 2023.03.09 |
[Kotlin] 안드로이드 데이터 엑셀화하기(.csv) (0) | 2023.02.08 |