Просмотр страниц и анализ данных фрагмента - PullRequest
0 голосов
/ 10 октября 2018

У меня есть действие с пейджером просмотра, а во Фрагменте у меня есть табуляция и я помещаю фрагмент в табуляцию без пейджера просмотра.при привязке фрагмента к пейджеру и его перелистывании он меняет действие, но не фрагмент в макете, который он показывает пустым.

tabLayout = view.findViewById(R.id.productdetail_tab);
replaceFragment(new ProductDetails());
tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
    @Override
    public void onTabSelected(TabLayout.Tab tab) {
        switch(tab.getPosition()){
            case 0:
                replaceFragment(new ProductDetails());
                break;
            case 1:
                replaceFragment(new RelatedProducts());
                break;
        }
    }
});

public void replaceFragment(Fragment fragment){
    FragmentManager fm = getActivity().getSupportFragmentManager();
    FragmentTransaction ft = fm.beginTransaction();
    ft.replace(R.id.container, fragment);
    ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
    ft.commit();
}

Ниже приведен адаптер

public class ProductDetailsAdapterNew extends FragmentPagerAdapter {
    public ProductDetailsAdapterNew(FragmentManager fm) {
        super(fm);
    }

    @Override
    public Fragment getItem(int position) {
        switch(position) {

            case 1: return new FragmentProductDetails();
            case 2: return new FragmentProductDetails2();
            case 3: return new FragmentProductDetails3();
            default: return new FragmentProductDetails();

        }
    }

    @Override
    public int getCount() {
        return 3;
    }

    @Override
    public int getItemPosition(@NonNull Object object) {
        return super.getItemPosition(object);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...