我在片段A中有一个表单,在用户输入信息并按下“提交”后,他们应该被重定向到片段B。
我可以设法调用fragment方法,但是出现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中的方法?
答案 0 :(得分:1)
您可以这样做,但这不是一个好方法。
在FragmentA中提交表单后,将结果返回到“活动”,然后启动FragmentB。
在FragmentA中,就像:
public void formSubmitted(){
getActivity().startFragmentB(mFormData)
}
然后在Activivity中创建一个方法:
public void startFragmentB(Form formData){
// handle fromData
// start fragmentB
}