Я столкнулся с этой проблемой, возможно, есть и та же проблема, но я не могу найти ее на этой странице. Поэтому моя проблема в том, что у меня есть моя активность, которая инициализирует ViewPager, и у меня есть 2 фрагмента в этом представлении.Идентификатор доступа от родительской активности к фрагментам в ViewPager
Моя активность:
public class ShoppingDetailsActivity extends BaseActivity {
ViewPagerAdapter adapter;
@Bind(R.id.view_pager)
ViewPager viewPager;
@Bind(R.id.pager_tabs)
PagerSlidingTabStrip pagerSlidingTabStrip;
int shop_id;
int id;
int shop_sub_id;
int subId;
int shop_sub_sub_id;
int subSubId;
int shop_detail_id;
int detailId;
public static final String SHOP_ID = "shop_id";
public static final String SHOP_SUB_ID = "shop_sub_id";
public static final String SHOP_SUB_SUB_ID = "shop_sub_sub_id";
public static final String SHOP_DETAIL_ID = "shop_detail_id";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
activityComponent().inject(this);
setContentView(R.layout.activity_shopping_details);
ButterKnife.bind(this);
adapter = new ViewPagerAdapter(getSupportFragmentManager());
viewPager.setAdapter(adapter);
pagerSlidingTabStrip.setViewPager(viewPager);
shop_id = getIntent().getIntExtra(SHOP_ID, id);
shop_sub_id = getIntent().getIntExtra(SHOP_SUB_ID, subId);
shop_sub_sub_id = getIntent().getIntExtra(SHOP_SUB_SUB_ID, subSubId);
shop_detail_id = getIntent().getIntExtra(SHOP_DETAIL_ID, detailId);
}
}
Мой адаптер:
public class ViewPagerAdapter extends FragmentPagerAdapter {
public ViewPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
Fragment fragment = null;
switch (position) {
case 0:
fragment = new InfoAdminFragment();
break;
case 1:
fragment = new ViewAdminFragment();
break;
default:
break;
}
return fragment;
}
@Override
public int getCount() {
return 2;
}
@Override
public CharSequence getPageTitle(int position) {
if (position == 0) {
return "InfoAdminFragment";
} else if (position == 1) {
return "ViewAdminFragment";
} else {
return super.getPageTitle(position);
}
}
}
Как вы можете видеть в моей деятельности у меня есть много идентификаторов с использованием getIntent() и получить их успешно, но я также нужно каким-то образом передать мои оба фрагмента в ViewPager, как я могу решить эту проблему?
Вы должны передавать данные на ваш адаптер, что бы вы ни хотели o переслать фрагмент, проверить ответ на готовность. –