-
[안드로이드] 탭 이동시 recyclerview 자동 스크롤 막는 법(prevent nested recyclerview from automatically repositioning)안드로이드 2017. 1. 11. 14:22
개발 하면서 탭 두개가 들어가는 FragmentStatePagerAdapter 를 이용해
두 개의 fragment 가 있고 그 안에 recyclerview 를 활용하는 화면을 만들었는데
그 recyclerview 안에 또 하나의 vertical recyclerview 가 있어서
일반적인 LinearLayoutManager 를 이용하니 자동으로 크기를 잡아줘서 화면에 나오는 것은 문제가 없었다. 이것은 Android Support Library의 버전이 23.2.0 이 나오면서 바뀐 점 중에 하나가 RecyclerView.LayoutManager에 AutoMeasure 라는 기능이 포함되면서 자동으로 높이값을 잡아준다고 한다.
그래서 화면은 나왔지만, 문제는 다른 탭으로 이동하게 되면
recyclerview에 포함된 recyclerview까지 자동으로 스크롤하는 문제가 있어서
몇 일을 찾는 중에
상위 recyclerview 혹은 바깥 레이아웃에
android:descendantFocusability="blocksDescendants"
라는 옵션을 주면 해결됩니다.
'안드로이드' 카테고리의 다른 글
170921_TIL(안드로이드에서 웹뷰로 특정 함수 혹은 동작시키기) (0) 2017.09.21 [안드로이드] 스크롤뷰 안에 recyclerview 사용하기 (0) 2017.03.22 [안드로이드] DrawerLayout, NavigationView 사용하기 (0) 2016.12.27 [안드로이드] 데이터바인딩 onClick (0) 2016.12.22 [안드로이드] 글자 선택 팝업 (0) 2016.12.15