2010-11-03 90 views
0

我需要獲取上下文才能獲取資源。就像這樣:如何獲取上下文

getApplicationContext().getResources().openRawResource(R.raw.texture); 

我見過的getApplicationContext()Android的文檔中,但是當我嘗試在上面的代碼中使用它,它不工作 - 它不存在。

我可以通過函數發送上下文以獲得它所需的地方,它的工作原理。但是,我發現通過許多不需要或不使用它的函數發送變量很麻煩。然後,我寧願試着在它的功能上做到這一點。但getApplicationContext(),如在android文檔中,不起作用 - http://developer.android.com/reference/android/content/Context.html

那麼,如何獲取上下文,以便我可以讀取資源?或者,我是唯一的選擇通過我的所有功能發送它?

回答

1

getApplicationContext()是Context的一種方法。你必須有一個上下文來獲取資源。這就是它的工作原理。

只要確保您沒有在任何地方存儲對上下文的引用,或者可能導致內存泄漏。

0

在您的活動中,您可以立即使用getResources()方法。例如

getResources().getDrawable(R.drawable.logo); 

如果你想在不活動的一些其他類的一些資源,你應該通過在其他類的上下文鏈接從您的活動。例如

Util.convertLogo(this) 

Util.convertLogo(getApplicationContext())