如何获取上下文
问题描述:
我需要获取上下文才能获取资源。就像这样:如何获取上下文
getApplicationContext().getResources().openRawResource(R.raw.texture);
我见过的getApplicationContext()Android的文档中,但是当我尝试在上面的代码中使用它,它不工作 - 它不存在。
我可以通过函数发送上下文以获得它所需的地方,它的工作原理。但是,我发现通过许多不需要或不使用它的函数发送变量很麻烦。然后,我宁愿试着在它的功能上做到这一点。但getApplicationContext(),如在android文档中,不起作用 - http://developer.android.com/reference/android/content/Context.html
那么,如何获取上下文,以便我可以读取资源?或者,我是唯一的选择通过我的所有功能发送它?
答
getApplicationContext()
是Context的一种方法。你必须有一个上下文来获取资源。这就是它的工作原理。
只要确保您没有在任何地方存储对上下文的引用,或者可能导致内存泄漏。
答
在您的活动中,您可以立即使用getResources()方法。例如
getResources().getDrawable(R.drawable.logo);
如果你想在不活动的一些其他类的一些资源,你应该通过在其他类的上下文链接从您的活动。例如
Util.convertLogo(this)
或
Util.convertLogo(getApplicationContext())