Android/Android 일반
Bottom Navigation과 ViewPager 연결하기
lipnus
2019. 4. 23. 11:57
반응형
Bottom Navigation과 ViewPager 연결하기
viewpager의 상태를 bottom navagation에 반영
viewpager.onPageChangeListener {
onPageSelected {
navigation.menu.getItem(it).setChecked(true)
}
}
document: https://developer.android.com/reference/android/support/v4/view/ViewPager.OnPageChangeListener
*변경된 함수
viewpager?.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
override fun onPageScrollStateChanged(state: Int) {
}
override fun onPageScrolled(position: Int, positionOffset: Float, positionOffsetPixels: Int) {
}
override fun onPageSelected(position: Int) {
navigation.menu.getItem(position).setChecked(true)
}
})
bottom naviation의 상태를 viewpager에 반영
private val mOnNavigationItemSelectedListener = BottomNavigationView.OnNavigationItemSelectedListener { item ->
when (item.itemId) {
R.id.navigation_first -> {
setPageIndex(0)
return@OnNavigationItemSelectedListener true
}
R.id.navigation_second -> {
setPageIndex(1)
return@OnNavigationItemSelectedListener true
}
R.id.navigation_third -> {
setPageIndex(2)
return@OnNavigationItemSelectedListener true
}
}
false
}
override fun setPageIndex(index: Int) {
viewpager?.currentItem = index
}
참고: https://droidmentor.com/bottomnavigationview-with-viewpager-android/
반응형