In my MainActivity I have Transaction my MainFragment.
MainFragment mainFragment = new MainFragment();
getSupportFragmentManager().beginTransaction()
.replace(R.id.fragment_holder, mainFragment)
.addToBackStack(mainFragment.getClass().getName())
.commit();
at my MainFragment I'm using a ViewPager together with a FragmentStatePagerAdapter to host My fragment.
public class TaskPagerAdapter extends FragmentStatePagerAdapter {
private String cookieString = null;
private String userString = null;
public TaskPagerAdapter(FragmentManager fm, Cookie cookie) {
super(fm);
this.cookieString = HttpUtil.serializeCookie(cookie);
}
@Override
public Fragment getItem(int position) {
Fragment fragment = null;
switch (position) {
case 0:
fragment = new NotificationFragment();
break;
// case 1:
// break;
// case 2:
// break;
// case 3:
// break;
// case 4:
// break;
}
return fragment;
}
@Override
public int getCount() {
return 1;
}
@Override
public CharSequence getPageTitle(int position) {
return new String[]{"رویدادها", "توضیحات", "فرم ها"}[position];
}
@Override
public int getItemPosition(Object object) {
return POSITION_NONE;
}
}
and in my MainFragment:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_main, container, false);
ButterKnife.bind(this, rootView);
mPagerAdapter = new TaskPagerAdapter(getFragmentManager(),cookie);
mViewPager.setAdapter(mPagerAdapter);
mViewPager.setCurrentItem(0);
return rootView;
according this link I write this commend into main fragment:
mViewPager.setCurrentItem(0);
Fragment page = getActivity().getSupportFragmentManager().findFragmentByTag("android:switcher:" +
R.id.pager + ":" + mViewPager.getCurrentItem());
NotificationFragment fragment = (NotificationFragment) page;
fragment.setNotificationCallBack(this);
mCountNotifyTask.getCountNotifyTask();
return rootView;
but page retrieve null!! what is you suggestion? I am using this tutorial
I still got null.
NotificationFragment fragment = (NotificationFragment) mPagerAdapter.getRegisteredFragment(0);