반응형
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/
반응형
'Android > Android 일반' 카테고리의 다른 글
EditText의 핸들(Handle)을 이미지로 바꾸기 (0) | 2019.04.24 |
---|---|
EditText 부분 별 색 설정하기 (1) | 2019.04.23 |
타이틀바(Action bar) 없애기 (0) | 2019.04.19 |
애드몹(Admob) 보상형 광고 예제 (0) | 2019.04.19 |
dp px 변환 함수 (0) | 2019.04.08 |