Как вызвать метод фрагментов из Activity в Android - PullRequest
0 голосов
/ 19 октября 2018

Прежде всего, скажите, что этот вопрос не продублирован, так как я видел все вопросы, и решение для меня не работает.Моя проблема в том, что я не знаю, как вызвать метод «RefreshMapList» для фрагмента из другого действия, которое у меня есть, спасибо за вашу помощь!

Метод фрагмента:

public void RefreshMapList(){
        if (MapList == 0) {
            MapFragment fragment = (MapFragment) getFragmentManager().findFragmentById(R.id.simpleFrameLayout);
            fragment.RefreshMap();
        }
        else if (MapList == 1) {
            Gallery_Fragment fragment = (Gallery_Fragment) getFragmentManager().findFragmentById(R.id.simpleFrameLayout);
            fragment.RefreshList();
        }
        else {
            MapFragment fragment = (MapFragment) getFragmentManager().findFragmentById(R.id.simpleFrameLayout);
            fragment.RefreshMap();
            Gallery_Fragment fragment2 = (Gallery_Fragment) getFragmentManager().findFragmentById(R.id.simpleFrameLayout);
            fragment2.RefreshList();
        }
    }

Ответы [ 2 ]

0 голосов
/ 19 октября 2018

попробуйте это ..

                 Fragment mapFragment = getSupportFragmentManager().findFragmentById(R.id.simpleFrameLayout);
                    if (mapFragment instanceof MapFragment) {
                        ((MapFragment) mapFragment).RefreshMap();
                    }
0 голосов
/ 19 октября 2018

Ваш вопрос дублируется от этого

Вот ответ на вопрос, который вы ищете

FragmentManager fm = getSupportFragmentManager();

//if you added fragment via layout xml
YourFragmentClass fragment = (YourFragmentClass)fm.findFragmentById(R.id.your_fragment_id);
fragment.yourPublicMethod();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...