你好,所以我想從我的活動傳遞一個數組列表的片段傳遞數組列表,這是我做過什麼:空對象引用,而嘗試使用接口
FirstActivity:
AdminInterface instanceForInterface;
OnCreate
//
System.out.println(results.size) ; //works fine
instanceForInterface.onDataRecieved(results); // here I am getting the exception
//
public interface AdminInterface {
void onDataRecieved(ArrayList <Result> response);
}
public void setInterface(UserFragment anInterface) {
this.instanceForInterface = anInterface;
}
片段
OnActivityCreated
((FirstActivity) getActivity()).setInterface(this);
@Override
public void onDataRecieved(ArrayList<Result> response) {
processData(response);
}
異常
Attempt to invoke interface method 'void **************.onDataRecieved(java.util.ArrayList)' on a null object reference
我想什麼:
我在OnActivityCreated()
解決方案調用此行
instanceForInterface.onDataRecieved(results);
在OnCreate()
的
((FirstActivity) getActivity()).setInterface(this);
在初始化之前,請?
謝謝
的可能的複製[?什麼是空指針異常,以及如何解決呢(https://stackoverflow.com/questions/218384/什麼是一個nullpointerexception和如何做我修復它) – SripadRaj
放在'onAttach'而不是'OnActivityCreated' –
更好地傳遞'ArrayList'作爲'Bundle' https://stackoverflow.com/問題/ 17436298 /如何傳遞變量從活動到碎片並傳遞迴 –