У меня есть адаптер пейджера заказов
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentStatePagerAdapter;
import java.util.ArrayList;
import java.util.List;
public class OrderPagerAdapter extends FragmentStatePagerAdapter {
private final List<Fragment> mFragmentList = new ArrayList<>();
private final List<String> mFragmentTitleList = new ArrayList<>();
private FragmentManager fm;
public OrderPagerAdapter(FragmentManager fm) {
super(fm);
this.fm = fm;
}
public void addFragment(Fragment fragment, String title) {
mFragmentList.add(fragment);
mFragmentTitleList.add(title);
fm.beginTransaction().addToBackStack(null).commit();
}
public Fragment getItem(int position) {
return mFragmentList.get(position);
}
@Override
public int getCount() {
return mFragmentList.size();
}
}
Методы в моем основном классе активности заказов
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_order);
datasource = new Datasource(this);
categoryFragment = new CategoryFragment();
productFragment = new ProductFragment();
detailFragment = new DetailFragment();
mViewPager = (ViewPager) findViewById(R.id.pager2);
mOrderPagerAdapter = new OrderPagerAdapter(getSupportFragmentManager());
setupViewPager(mViewPager);
}
private void setupViewPager(ViewPager viewPager) {
mOrderPagerAdapter.addFragment(categoryFragment, "category");
mOrderPagerAdapter.addFragment(productFragment, "product");
mOrderPagerAdapter.addFragment(detailFragment, "s");
viewPager.setAdapter(mOrderPagerAdapter);
}
public void setViewPager(int fragmentNumber) {
mViewPager.setCurrentItem(fragmentNumber);
}
Метод Popbackstack
@Override
public void onBackPressed() {
getSupportFragmentManager().popBackStack();
}
Всякий раз, когда я нажимаю onBackPressedкнопка предыдущий фрагмент не загружается, почему это происходит?Я пробовал несколько вещей, таких как добавление в backstack и затем фиксацияНо ни один из способов не работает.