首先,让我解释一下上下文会更好一些,然后让我们继续介绍如何使用和接收它。本质上,上下文是将资源链接到程序的参考。每个对象都有自己的上下文,该上下文包含设置该对象所需的资源。除其他目的外,还需要创建许多对象并获得程序标识信息。这使得建立新的视图和活动非常宝贵,但也可以用于其他目的。另请参阅此答案以获取更多信息。
一个项目的上下文可以来自多个地方。有时它被存储并且必须被检索,有时它是被继承的。基本上,这是面向对象的编程。
仅举几个例子:
活动继承上下文。因此,如果您处于活动中,则只需要传递自己即可使用上下文。它还包含一个指向的指针
getbaseContext()。如果您需要整个应用程序上下文,则有时可能需要引用它,但是很可能不会有一阵子。
视图不继承上下文。但是,它确实具有方法getContext()。如果需要从视图中获取上下文,则这是获取上下文的方法。此上下文将不完整,而仅具有View内容的上下文。
片段也不会继承上下文。它们包含方法getActivity(),如果Fragment处于活动状态,则该方法将返回活动,即Fragment的上下文。
BroadcastReceivers也不继承上下文。实际上,它们根本不包含上下文,而只是在接收到事件时接收当前上下文(例如onReceive(Context
context,Intent
intent))



