Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Kommersantt
17 / 17 / 8
Регистрация: 21.06.2014
Сообщений: 131
#1

ViewPager - не удалять фрагмент при пролистывании - Программирование Android

13.04.2017, 21:13. Просмотров 201. Ответов 2

Здравствуйте всем. Есть viewPager с тремя фрагментами. Так как он сохраняет объекты слева и справа. Можно реализовать так, когда я листаю на третий фрагмент, первый не удалялся

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
public class MyPagerAdapter extends FragmentPagerAdapter {
    private static int NUM_ITEMS = 3;
    private Map<Integer, String> mFragmentTags;
    private FragmentManager mFragmentManager;
 
    public MyPagerAdapter(FragmentManager fragmentManager) {
        super(fragmentManager);
        mFragmentManager = fragmentManager;
        mFragmentTags = new HashMap<Integer, String>();
    }
 
    // Returns total number of pages
    @Override
    public int getCount() {
        return NUM_ITEMS;
    }
 
    // Returns the fragment to display for that page
    @Override
    public Fragment getItem(int position) {
        switch (position) {
            case 0:
                return Fragment_language.newInstance();
            case 1:
                return Fragment_adapter_history.newInstance();
            case 2:
                return Fragment_nastroiki.newInstance();
            default:
                return null;
        }
    }
 
    // Returns the page title for the top indicator
    @Override
    public CharSequence getPageTitle(int position) {
        return "Page " + position;
    }
 
    @Override
    public Object instantiateItem(ViewGroup container, int position) {
        Object object = super.instantiateItem(container, position);
        if (object instanceof Fragment) {
            Fragment fragment = (Fragment) object;
            String tag = fragment.getTag();
            mFragmentTags.put(position, tag);
        }
        return object;
    }
 
    public Fragment getFragment(int position) {
        Fragment fragment = null;
        String tag = mFragmentTags.get(position);
        if (tag != null) {
            fragment = mFragmentManager.findFragmentByTag(tag);
        }
        return fragment;
    }
}
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
  mViewPager = (ViewPager) view.findViewById(R.id.Pager);
        //mViewPager.setAdapter(mSectionsPagerAdapter);
        mAdapterViewPager = new MyPagerAdapter(getActivity().getSupportFragmentManager());
 
 
        mViewPager.setAdapter(mAdapterViewPager);
 
        mViewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
 
            @Override
            public void onPageSelected(int position) {
                Log.e("TEST", "onPageSelected, position = " + position);
              //  mSectionsPagerAdapter.notifyDataSetChanged();
            }
 
            @Override
            public void onPageScrolled(int position, float positionOffset,
                                       int positionOffsetPixels) {
                Fragment fragment = mAdapterViewPager.getFragment(position);
                if (fragment != null) {
                fragment.onResume();
                }
            }
 
            @Override
            public void onPageScrollStateChanged(int state) {
            }
        });
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.04.2017, 21:13
Здравствуйте! Я подобрал для вас темы с ответами на вопрос ViewPager - не удалять фрагмент при пролистывании (Программирование Android):

ViewPager скрыть (удалить) фрагмент - Программирование Android
Здравствуйте ув. Программисты. Есть ViewPager с тремя Screen Layout.xml. На первой странице логотип на втором и третьем информация. ...

Скрывать Toolbar при пролистывании ListView - Программирование Android
Подскажите как реализовать, когда листаешь ListView, что бы Toolbar исчезал? Спасибо)

Ошибка при инициализации ListView в ViewPager - Программирование Android
Всем доброго времени суток. Столкнулся с проблемой, в простом примере создания ViewPager, все работает до тех пор, пока не инициализирую...

Обновление данных в ViewPager при перелистывании вкладок - Программирование Android
Есть две вкладки (смотри картинку). На первой нажимаем кнопку плюс - пишем имя - сохраняю item. Теперь, при перелистывании этот Item...

Как победить подтормаживание при листании ViewPager со списками listview? - Программирование Android
Как победить подтормаживание при листании ViewPager со списками listview? если быстро листать (ну или даже не очень быстро), то...

При onBackPressed() фрагмент продолжает работать - Программирование Android
Привет, я переопределил onBackPressed(), он показывает AlertDialog, но при этом у фрагмента не вызывается onPause() почему?

2
demixdn
228 / 175 / 54
Регистрация: 31.10.2016
Сообщений: 401
14.04.2017, 15:14 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Java
1
mViewPager.setOffscreenPageLimit(2);
2
Kommersantt
17 / 17 / 8
Регистрация: 21.06.2014
Сообщений: 131
16.04.2017, 13:35  [ТС] #3
Спасибо, это работает для меня))
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.04.2017, 13:35
Привет! Вот еще темы с ответами:

Переход на фрагмент при открытии приложения - Программирование Android
Доброго времени суток! Недавно начал заниматься разработкой Android приложения, разобрался с NavDrawer но столкнулся с проблемой, при...

Сохранить, восстановить данные при повороте (Фрагмент, Поток) - Программирование Android
Помогите разобраться как сделать правильно поворот экрана. Есть МаинАктивити в которой создается клас XML_Load в котором загружаются...

как сделать, чтобы при пролистывании странице, один элемент замирал, и остальное содержимое страницы уходило п - HTML, CSS
сам сайт www.audit-ptz.ru/test Я хочу, чтобы верх сайта, до строки навигации прокручивался, а сама строка замирала, и остальной сайт...

Вырезать фрагмент из wav файла и сохранить этот фрагмент в новый файл. - Программирование iOS
Добрый день, подскажите плиз как можно вырезать фрагмент из wav и сохранить его в новый wav файл?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru