Как вызвать метод из фрагмента родительской активности - PullRequest
0 голосов
/ 12 апреля 2020

Я пытаюсь вызвать метод из фрагмента, который находится внутри viewpager и viewpager внутри основного действия на основное действие. Я видел много решений по этому вопросу, но большинство из них используют findviewbyId, но я не назначил ни одного идентификатора для фрагмента, так как у меня есть добавленный фрагмент:

 private void setUpViewPager(ViewPager viewPager){
    ViewPagerAdapter viewPagerAdapter= new ViewPagerAdapter(getSupportFragmentManager());
    viewPagerAdapter.addFragments(new Chats(),"Chats");
    viewPagerAdapter.addFragments(new UsersFragment(),"Users");
    viewPager.setAdapter(viewPagerAdapter);

Я хочу вызвать метод Status () от UserFragment к основному Activity.

Ответы [ 2 ]

1 голос
/ 12 апреля 2020

Я нашел решение этого вопроса здесь

https://learnpainless.com/android/how-to-get-fragment-from-viewpager-android

1 голос
/ 12 апреля 2020

Вы должны использовать findFragmentByTag

getSupportFragmentManager().findFragmentByTag(fragmentTag)

class CustomSwipeAdapter extends FragmentPagerAdapter {

       //....

        @Override
        public Object instantiateItem(ViewGroup container, int position) {
            Object obj = super.instantiateItem(container, position);

            if (obj instanceof Fragment) {
                Fragment f = (Fragment) obj;
                String tag = f.getTag();
                mFragmentTags.put(position, tag);
            }

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