В качестве состояний состояний я пытаюсь реализовать swipable вкладки с помощью фрагментов и ActionBar. Я успешно использовал ActionBarSherlock и код из примеров с классом TabsAdapter (подкласс к FragmentPageAdapter). Некоторые фрагменты должны иметь возможность отображать новую вкладку в одной и той же вкладке spor, и именно здесь возникает проблема. Я действительно не могу понять, как заменить фрагмент в пейджере новым. Я googled и пробовал много вещей.Замещаемые и заменяемые вкладки, фрагменты и ActionBar
Я могу заменить фрагмент во внутренней коллекции, содержащей классы фрагментов внутри FragmentPageAdapter, тем самым делая новый фрагмент доступным для метода getItem, но это не делает, поскольку я не могу понять, как обновить пейджер чтобы показать новый фрагмент. Даже после перехода на другую вкладку и возврата я все еще получаю старый фрагмент, который, я полагаю, кэшируется где-то в пейджере. Итак, есть ли способ сообщить об обновлении пейджера?
Возможно, мне стоит просто забыть использовать FragmentPageAdapter? В таком случае, каков правильный способ получить всю эту функциональность?
P.S. Если вы хотите, чтобы мой код дал мне знать, но это в основном то же самое, что и в примерах, и проблема более общая. Я думаю, что
Спасибо, я попробовал его и он работает! Но использует ли FragmentStatePagerAdapter значение, что фрагменты получают перезагрузку каждый раз, когда я переключаю/прокручиваю между ними или они все еще хранятся в памяти и просто перезагружаются при вызове notifyDataSetChanged? – user1293081
'FragmentStatePagerAdapter' будет выгружать/загружать каждый раз, когда вы садитесь. Это компромисс между вычислительной мощностью и памятью с помощью 'PagerAdapter' от Fragment. – Louth
Итак, нет способа использовать FragmentPageAdapter и просто вручную принудительно перезагрузить? Предпочитал бы, чтобы сделать его более плавным. – user1293081