코딩하는 일용직 노동자

Pages must fill the whole ViewPager2 (use match_parent) 에러 해결사례 본문

안드로이드

Pages must fill the whole ViewPager2 (use match_parent) 에러 해결사례

bacass 2022. 5. 17. 16:23
ViewPager2 를 사용하던중 아래와 같은 에러가 발생했습니다.

java.lang.IllegalStateException: Pages must fill the whole ViewPager2 (use match_parent)
	at androidx.viewpager2.widget.ViewPager2$4.onChildViewAttachedToWindow(ViewPager2.java:270)
	at androidx.recyclerview.widget.RecyclerView.dispatchChildAttached(RecyclerView.java:7561)
	at androidx.recyclerview.widget.RecyclerView$5.addView(RecyclerView.java:860)
	at androidx.recyclerview.widget.ChildHelper.addView(ChildHelper.java:107)
발생한 에러메세지를 이용해 검색을 해보니 ViewPager2 클래스의
onChildViewAttachedToWindow() 메소드에서 width 나 height 가 wrap_content 라면 익셉션을 발생시키는것이었습니다.

제가 작업중인 소스에서 살펴보니 ViewPager에서 사용하는 item xml 파일에
android:layout_width="wrap_content"
이런 처리때문에 발생한 오류입니다.
android:layout_width="match_parent"
로 처리하니 간단히 해결되었습니다.