Вызов метода фрагмента из Activity - PullRequest
0 голосов
/ 17 мая 2019

У меня есть форма во фрагменте A, после того, как пользователь вводит свою информацию и нажимает на кнопку отправки, он должен быть перенаправлен на фрагмент B.

Мне удается вызвать метод фрагмента, однако я получаюошибка NullPointerException:

Attempt to invoke virtual method 'java.lang.Object android.content.Context.getSystemService(java.lang.String)' on a null object reference

Как я вызываю метод во фрагменте B:

(new FragmentB()).infoSubmitted();

Как эффективно вызвать метод во фрагменте B?

1 Ответ

1 голос
/ 17 мая 2019

Вы можете сделать это, но это не очень хороший подход.

Как только вы отправите форму в FragmentA, верните результаты в Activity и запустите FragmentB.

В FragmentA это будет выглядеть так:

public void formSubmitted(){
     getActivity().startFragmentB(mFormData)
}

А в Активности создайте метод:

public void startFragmentB(Form formData){
     // handle fromData
     // start fragmentB
}
...