Как вызвать метод в деятельности, если фрагмент загружен - PullRequest
0 голосов
/ 25 октября 2019

Привет, у меня есть сценарий. Есть действие, которое содержит 2 фрагмента. Теперь я хочу вызвать метод в MainActivity.class, чтобы при загрузке фрагмента 1 выполнялся следующий метод, а при загрузке фрагмента 2 запускать этот метод

if (fragment1.loaded())
{
call this function
}
if (fragment2.loaded())
{
call this function
}

Ответы [ 4 ]

3 голосов
/ 25 октября 2019

Первый фрагмент в действии

0 голосов
/ 25 октября 2019

, если вы хотите вернуть обратный вызов, когда был запущен метод Fragment Loaded. Вы должны создать интерфейс для получения обратного вызова в Activity.

Вы должны создать новый фрагмент в своей деятельности, и вы должны переопределить этот интерфейс здесь. Когда код работает Ваш интерфейс сработал в вашем фрагменте, и этот метод вызвал обратный вызов в вашей активности.

вы можете использовать интерфейс onClickListener в качестве справочного материала для ваших нужд. он использует для того же действия.

0 голосов
/ 25 октября 2019

Создайте глобальный интерфейс для наблюдения за жизненным циклом любого фрагмента , Его легко кодировать.

0 голосов
/ 25 октября 2019

Вы можете вызвать этот метод внутри самих фрагментов, чтобы убедиться, что они загружены.

В методе onCreate () обоих фрагментов вы можете вызвать

(activity as YourActivity).activityMethod()

Помните, что фрагменты могут иметь доступ к своим родительским действиям и, следовательно, к доступным методам.

Если вы хотите объединить эти методы в цепочку, вы должны реализовать прослушиватели для обоих фрагментов и сделать родительское действие для их расширения.

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