Published 2021. 4. 24. 20:25
반응형
안드로이드 RecyclerView 포커스 버그
Android RecyclerView Focus Bugs
안드로이드 개발자라면 제일 많이 사용하는 게 RecyclerView라고 단연 말할 수 있다.
이것만큼 작은 화면에 많은 걸 담을 수 있는게 없으니 당연히 가장 많이 사용할 것이다.
개발을 하다 보면 Recyclerview 안에 Recyclerview를 넣어서 사용을 해야할 경우가 있는데,
간혹 동작 시 최초 동작 시 Recyclerview의 포커스가 움직여 스크롤이 내려가는 현상을 볼 수 있다.
이는 RecyclerView의 하나의 버그 혹은 이슈정도이며 이 문제를 알 고 있듯이 간단하게 해결할 수 방법을 제시하고 있다.
코드 한줄이며 심지어 xml에서 수정할 수 있다
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/sample"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:descendantFocusability="blocksDescendants"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:listitem="@layout/viewholder_magazine" />
위 코드는 Recyclerview의 xml코드이며 특이한 점은 없다.
위와 같이 Recyclerview의 포커스가 움직이는 이슈가 생긴다면
가장 상위의 Recyclerview에 속성 하나를 추가하면 된다.
android:descendantFocusability="blocksDescendants"
이거 한줄만 추가해준다면 포커스가 자동으로 바뀌어 스크롤이 움직이는 현상을 해결할 수 있다.
반응형