2015-10-13 21 views
-2

試圖從一個活動中調用一個函數,但我需要該活動的特定實例才能這樣做。我們如何從上下文中訪問android活動?

有沒有辦法從應用程序中調用該特定活動?

如果沒有,是否有辦法從應用程序啓動一個活動,以便我始終可以訪問我開始運行的實例?我試過這個,並編輯了清單,但應用程序從未開始......

+0

你的意思是'this'關鍵字? – Sweeper

+1

不知道細節這聽起來像你應該重新考慮你的設計。當你調用它時,你不知道你的活動實例在哪個狀態。 – Henry

+0

您可以從應用程序類 – Pankaj

回答

2

關於這個問題中有限的細節,我認爲你的需求是在需要活動本身的活動中調用一個函數作爲參數。我認爲你可以這樣做。

Activity actiity=this; 
yourMethode(activity) 
{ 
//body of your methode 
} 

無論何時使用變量「activity」,您都可以獲取當前活動的實例。

0

我認爲你正在談論投射上下文以獲得它所代表的活動類型。你可以這樣做。但要小心,如果上下文不是這種類型,你很可能會導致崩潰。

((MainActivity) mContext).myMethod(); 

這並不推薦使用,因爲它會導致類和活動之間的一些緊密耦合。

相關問題