的時候我一直在開發Android應用程序很多時候,爲了獲得一些重要的變量,例如getApplicationContext()或其他變量,如按鈕或Edittexts,這是正常MainActivity但相同項目在其它的類需要外部訪問,我一直在使用這種技術,就是聲明中MainActivity變量靜態和從其他類訪問它們
在MainActivity(對於getApplicationContext()的情況下):
private static Context context = null;
和的onCreate方法內,我做的:
context = getApplicationContext();
,然後我訪問上下文(顯示一個烤麪包消息,例如)通過使用:
Toast.makeText(MainActivity.context,"Message",Toast.LENGTH_LONG).show();
在我的其他班。類似於得到或設置文本中的一個EditText變量等。
我的問題是:
1)這是我的問題定義的最佳方法是什麼?
2)如果否,有沒有更好的方法?
3)如果否,這種技術的缺點是什麼?
3)是否可以將相同的技術擴展到函數的主要性?
編輯:我做不需要其他活動在這裏,而我只是分裂應用程序的任務分成單獨類(或對象)。
什麼*究竟*你的意思是「靜態類」?在Java中,「靜態類」只是指嵌套類型,它不*意味着該類未被實例化。假設'MainActivity'實際上是一個活動,它*將被實例化...... –
好吧,那個部分是錯的(我已經編輯過),但是這個方法到目前爲止都是完美的。基本上MainActivity是一個類,其功能* OnCreate *是Android應用程序執行開始的地方。一般來說,MainActivity不是*顯式*實例化的。 – SoulRayder