FragmentStatePagerAdapter устарел из API 27 - PullRequest
0 голосов
/ 02 июля 2018

FragmentStatePagerAdapter устарела из API 27. Какой вариант FragmentStatePagerAdapter?

private class MainPagerAdapter extends FragmentStatePagerAdapter {

        MainPagerAdapter(FragmentManager fm) {
            super(fm);
        }

        @Override
        public Fragment getItem(int position) {
            Fragment result = new DummyFragment();
             return result;
        }

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

    }

код выше показывает FragmentStatePagerAdapter, getItem и super(fm); как устаревшие

Ответы [ 5 ]

0 голосов
/ 11 июня 2019

Вы можете продлить

androidx.fragment.app.FragmentStatePagerAdapter;

и звоните

super(fragmentManager, BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT);

в конструкторе вашего класса

0 голосов
/ 23 мая 2019

Следующие конструкторы делают то же самое

super(@NonNull FragmentManager fm)
super(@NonNull FragmentManager fm, BEHAVIOR_SET_USER_VISIBLE_HINT)

Проходящий BEHAVIOR_SET_USER_VISIBLE_HINT устарел. Вместо этого вы должны передать BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT.

Разница в прохождении тех объясняется в FragmentPagerAdapter:

 /**
 * Indicates that Fragment#setUserVisibleHint(boolean) will be 
 * called when the current fragment changes.
 */
@Deprecated
public static final int BEHAVIOR_SET_USER_VISIBLE_HINT = 0;

/**
 * Indicates that only the current fragment will be 
 * in the Lifecycle.State#RESUMED state. All other Fragments 
 * are capped at Lifecycle.State#STARTED.
 */
public static final int BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT = 1;
0 голосов
/ 02 июля 2018

Согласно Документации , android.support.v13.app.FragmentPagerAdapter устарел.

Вы можете заменить его на android.support.v4.app.FragmentPagerAdapter.

Проверьте это для Официальной документации.

0 голосов
/ 19 мая 2019

Вам необходимо добавить поведение в MainPagerAdapter, например:

super(fm, BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT);

0 голосов
/ 02 июля 2018

Этот класс устарел на уровне API 27.1.0. который был в поддержке v13 https://developer.android.com/reference/android/support/v13/app/FragmentPagerAdapter

Использование FragmentStatePagerAdapter из поддержки v4 https://developer.android.com/reference/android/support/v4/app/FragmentPagerAdapter

...