У меня есть четыре класса:Как перейти к методу фрагмента от активности
- FragmentActivity
- FragmentPagerAdapter
- Fragmenta
- FragmentB
В FragmentActivity я поставил TabPagerAdapter (FragmentPagerAdapter) на ViewPager.
viewPager = (ViewPager)findViewById(R.id.pager);
tabAdapter = new TabPagerAdapter(this, viewPager);
viewPager.setAdapter(tabAbAdapter);
В TabPagerAdapter я вернуть два фрагмента в GetItem() от переключателя заявления
return new fragmentA();
return new fragmentB();
поиски Фрагмент A и передает переменную в FragmentActivity с помощью метода интерфейса.
public void onDataPass(String data) {
kks= data;
viewPager.setCurrentItem(1);
}
Все это прекрасно работает. Я получаю данные из списка в FragmentA, и он возвращается к MainActivity. В SetCurrentItem (1) отображается Fragment B.
Часть, на которую я застрял, - это способ, которым я могу запустить FragmentB.upDateEquipment (kks) между kks = data и viewPager.SetCurrentItem() в onDataPass.
Я могу получить значение kks из Fragment B и запустить upDateEquipment, реализовав setOnClickItemListener с помощью кнопки в Fragment B, и это работает, но я бы предпочел не добавлять дополнительный клик для пользователя.