使用我有一個類似的追求就像這個話題:JAVA cannot make a static reference to non-static field解決方法用於創建對象的片段
我理解這個問題解決創建類的實例的與它的工作。 問題是,通過我使用的API,我不允許創建第二個實例。
是否有可能在我的Fragment
中使用已在MainActivity
中創建的對象?
我想已經有一個getter,但後來我得到Cannot make a static reference to the non-static method
試圖解釋問題的更詳細。
在我MainActivity
我通過object = API.createAPI_Object();
創建APIclass的對象(我被迫做這種方式會導致API構造函數是私有)
由於
public static synchronized API createAPI_Object()
{
if (numberOfObject == 0)
{
numberOfObject++;
return new API();
}
else
{
return null;
}
}
我可以只創建對象的一個實例。
但現在我需要在我的Fragment.class
中使用這個對象的實例,我不知道如何,因爲我不能創建一個新的,我不能使用MainActivity
之一(至少我不知道如何)
粘貼代碼的兄弟??? –
你好,你用newInstance命令創建你的類嗎?如果是這樣,你應該把這個類放入一個列表中。獲得現有課程後,您可以按照自己的想法進行操作。 – alicanbatur
((MainActivity)getActivity())。getInstanceYouWant()並在你的片段中使用它 –