목록fragment (4)
막무가내 삽질 블로그
indexboundsexception 에러라서 어디서 get을 가져다 쓰는 줄 알 고 한참 뒤지다가 자세히 다시 보니 staggeredgridlayoutmaanger.calculatecachedstart 에러임 일단 구조는 뷰페이저 + 프래그먼트 + 리싸이클러뷰이다. 뷰페이저를 왔다갔따 리싸이클러뷰를 스크롤했따 자꾸 그러면 간헐적으로 발생하는 에러. 뷰페이저2를 사용할 때 캐시 수를 설정하지 않았기 때문이다. 뷰페이저가 죽을 때 StaggredGridLayoutManager#onDetachedFromWindow가 호출된다. 이함수는 자주 전환할 때 호출 된다. @Override public void onDetachedFromWindow(RecyclerView view, RecyclerView.Recycl..
보호되어 있는 글입니다.
틀린 부분 있다면 댓글로 남겨주세요 프래그먼트의 add, replace 와 backstack을 사용했을 때 생명주기를 정리해보았다. replace 기존 fragment를 detach까지 끝낸 다음 새로운 fragment를 올림 add 기존 fragment를 그대로 둔 채 새로운 fragment를 올림 테스트 예제 1. ( fragment add ) 액티비티 위에 1~3번의 프래그먼트가 있다는 가정 액티비티 위에 1번 > 2번 > 3번의 순서로 테스트 진행 add.commit을 했을 경우 hide를 안시키면 이미 생성한 프래그먼트라서 에러가 뜬다. 그래서 보이지 않는 프래그먼트는 hide 시켜줬다. Button button = findViewById(R.id.btn_one); button.setOnClic..
참고자료 Difference between FragmentPagerAdapter and FragmentStatePagerAdapter, getSupportFragmentManager() and getChildFragmentManager() Difference between FragmentPagerAdapter and FragmentStatePagerAdapter Here is a log lifecycle of each fragment in ViewPager which have 4 fragment and offscreenPageLimit = 1 (default value) viblo.asia FragmentStatePagerAdapter deprecated from api 27