Нижний навигатор и таблайт иногда возвращаются пустыми - PullRequest
0 голосов
/ 10 октября 2019

Я использую действие, которое имеет нижнюю навигацию, пейджер просмотра и адаптер макета вкладки, чтобы перемещаться между фрагментами в моем приложении, но иногда по какой-то причине, когда я использую нижнюю навигацию, чтобы переместить пейджер представления, возвращался пустойвместо fragemnt, как это:

https://imgur.com/a/ww2TTAF

когда предполагается вернуть что-то вроде этого:

https://imgur.com/a/YRXhNRS

Чтобы исправить это, япопытался установить несколько пейджеров просмотра, я попытался установитьOffscreenPageLimit, изменив мой адаптер крана с FragmentStatePagerAdapter на FragmentPagerAdapter, но ни один из них не работал

Это мой адаптер крана

import android.support.annotation.Nullable;
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 TabAdapter extends android.support.v4.app.FragmentStatePagerAdapter {
    //FragmentStatePageAdapter
    private final List<Fragment> mFragmentList = new ArrayList<>();
    private final List<String> mFragmentTitleList = new ArrayList<>();
    TabAdapter(FragmentManager fm) {
        super(fm);
    }
    @Override
    public Fragment getItem(int position) {
        return mFragmentList.get(position);
    }
    public void addFragment(Fragment fragment, String title) {
        mFragmentList.add(fragment);
        mFragmentTitleList.add(title);
    }

    @Nullable
    @Override
    public CharSequence getPageTitle(int position) {
        return mFragmentTitleList.get(position);
    }
    @Override
    public int getCount() {
        return mFragmentList.size();
    }
}

переключение снизунавигация

   public void switchToNews() {
        tabLayout.setTabMode(TabLayout.MODE_FIXED);
        newsAdapter = new TabAdapter(MainApp.this.getSupportFragmentManager());
        textView.setText("الاخبار");
        downloadAdapter.addFragment(new importantFragment(), "اخبار مهمة");
        downloadAdapter.addFragment(new WeekFragment(), "اخبار الاسبوع هذا");
        downloadAdapter.addFragment(new HistoryFragement(), "اخبار الاسبوع الي طاف");
        viewPager.setAdapter(newsAdapter);

    }

Я заметил, что когда я опускаю панель уведомлений или помещаю приложение в фоновый режим, то при повторном ее открытии загружается фрагмент

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...