티스토리 뷰

반응형

how to change page on Button click in ViewPager

 

 

 

viewpager.currentItem으로 뷰페이저 객체의 현재 위치를 받아오고, 

viewpager.setCurrentItem(position, smoothScroll)으로 이동하고싶은 위치를 설정해주면 된다.

 

나는 화살표 버튼 클릭시 이벤트가 진행되게 하고 싶어서 setOnClickListener을 달아줬다.

그리고, 뷰페이지의 범위인 0~10을 벗어날 경우 자연스럽게 이어지도록 조건을 달아줬다.

leftarrow_imageview_showall.setOnClickListener {
            var current = showall_viewpager.currentItem
            if (current == 0){
                showall_viewpager.setCurrentItem(10, false)
            }
            else{
                showall_viewpager.setCurrentItem(current-1, false)

            }
        }

 

 

 

 

smoothScroll이란?

스무스하게 넘어가는 여부를 설정해주는 boolean값으로 true, false 둘 중에 하나를 넣어주면 되는데 

 

true의 경우

손으로 넘길 때와 같은 느낌이 좀 더 난다

 

false의 경우

페이지가 넘어가기보단 값만 변하는 느낌을 준다

이렇게 넘어간다.

반응형