반응형
1. ViewPager 를 사용하다가, 새로 리플러쉬해서 데이터를 보여주어야하는 상황이 왔다.
2. 리플러쉬를 하기 위해서 데이터 아이템들을 모두 clear 했다.
3. clear 후 새로운 데이터를 넣고, notifyDataSetChanged 해보았지만, 기존 뷰들이 그대로 보이는 현상이 있었다.
4. 이를 해결하고자 ViewPager에 getItemPosition 를 오버라이드 후, POSITION_NONE 을 추가했다.
POSITION_NONE 는 PagerAdapter의 기본적으로 포함된 상수이다.
public class ComplimentPagerAdapter extends FragmentStatePagerAdapter
private ArrayList<ComplimentListBean> complimentList;
............
@Override
public int getItemPosition(Object object) {
return POSITION_NONE;
}
.........
5. ViewPager에 데이터를 담아둔 arrayList를 complimentList.clear() 함수를 호출하니, getItemPosition 이 호출되고, 새롭게 뷰가 생성이 되었다.
반응형
'Programming > Android' 카테고리의 다른 글
Avoid non-default constructors in fragments: use a default constructor plus Fragment#setArguments(Bundle) (0) | 2016.12.27 |
---|---|
This fragment inner class should be static (0) | 2016.12.27 |
Android Studio 2.2.2 한글 laout 깨짐 현상 (0) | 2016.12.07 |
Android Studio 최초 실행시 느리게 실행되는 현상 (0) | 2016.11.24 |
Android dip, px 변환 계산 (0) | 2014.11.23 |