Ravi Malik
Ravi Malik

Reputation: 159

How to call a method from inside a fragment on to parent activity

I am trying to call a method from a fragment which is inside a viewpager and viewpager in inside the main activity on to main activity. I have seen many solution on this but most of them use findviewbyId but i have not assigned any Id to the fragment the way i have i have added fragment is

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

I want to call a method Status() from UserFragment on to main Activity.

Upvotes: 0

Views: 73

Answers (2)

Alex Fetisov
Alex Fetisov

Reputation: 71

You should use 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;
        }

Upvotes: 1

Ravi Malik
Ravi Malik

Reputation: 159

I found the solution to this question its here

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

Upvotes: 1

Related Questions