public static Fragment newInstance(int tabPosition) {
DesignDemoFragment fragment = new DesignDemoFragment();
Bundle args = new Bundle();
args.putInt(TAB_POSITION, tabPosition);
fragment.setArguments(args);
return fragment;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
tabPosition = getArguments() != null ? getArguments().getInt(TAB_POSITION) : 0;
}
class PagerAdapter extends FragmentStatePagerAdapter {
public DesignDemoPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position){
return Fragment.newInstance(position);
}
@Override
public int getCount() {
return 7;
}
@Override
public CharSequence getPageTitle(int position) {
String title = null;
title = new CategoryAsyncTask().cateNameArrayList.get(position).toString();
return title;
}
}
이렇게 newinstance에 position 값 지정하고 args 값으로 들고오게 했습니다.
그런데 문제는 디버깅 했을때 제일 첫화면에 tabposition 값이 0을 들고오고 또 1을 들고 옵니다.
이거 버그인가요 ?ㅠ 왜이런건가요
그리고 제일 처음 tabposition 값 0을 안읽는거 같은데 ... 원래 이런건가요 ?ㅠ