룬아님의 취중코딩

Recyclerview item을 화면 상단으로 scroll하는 방법 본문

개발/안드로이드 개발

Recyclerview item을 화면 상단으로 scroll하는 방법

룬아님 2019. 12. 26. 13:09

scrollToPosition을 사용하면 남은 아이템 상황에 따라 상단에 맞춰서 scroll되거나 중간에 보이도록 scroll 되는 등 상황에 따라 다른 동작을 하였기 때문에 기능 구현에 사용하기 어려웠다.

recyclerview의 특정 아이템을 화면의 상단에 위치하고 싶다면 scrollToPositionWithOffset을 사용하면 된다.
뒤쪽의 offset이 탑과의 거리를 뜻하기 때문에

layoutManager.scrollToPositionWithOffset(lastReadPosition, 0)

offset을 0으로 주면 상단에 붙게 된다.

 

또한

int centerOfScreen = recyclerView.getWidth() / 2;
layoutManager.scrollToPositionWithOffset(lastReadPosition, centerOfScreen);

이렇게 사용하여 아이템이 중앙에 오도록 구현할 수도 있다.

반응형
Comments