2016년 8월 16일 화요일

[안드로이드] PagerAdapter를 이용한 프래그먼트의 데이터 갱신

새로운 activity에서 무엇인가 데이터를 입력받았을 때 데이터의 리스트를 보여주는 fragment의 화면을 갱신하는 일은 자주 있는데 PagerAdapter를 이용하여 fragment 화면을 구성한 경우 데이터 갱신에 애를 먹고 있다면 아래와 같은 방법으로 문제를 해결할 수 있음을 참고한다.

1) FragmentStatePagerAdapter 클래스를 이용한다.
FragmentPagerAdapter 대신에 FragmentStatePagerAdapter를 사용해야 합니다.

2)

public class PagerAdapter extends FragmentStatePagerAdapter {
    int _numOfTabs;

    public PagerAdapter(FragmentManager fm, int numOfTabs) {
        super(fm);
        this._numOfTabs = numOfTabs;
    }
    public PagerAdapter(FragmentManager fm) {
        super(fm);
    }

    @Override
    public Fragment getItem(int position) {

        switch (position) {
            case 0:
                TabFragment1 tab1 = new TabFragment1();
                return tab1;
            case 1:
                TabFragment2 tab2 = new TabFragment2();
                return tab2;
            case 2:
                TabFragment3 tab3 = new TabFragment3();
                return tab3;
            default:
                return null;
        }
    }
    @Override
    public int getItemPosition(Object object) {

        return POSITION_NONE;
    }
    @Override
    public int getCount() {
        return _numOfTabs;
    }
}



댓글 없음:

댓글 쓰기