在Android编程中,Context类到底是什么?它用于什么?

我在开发者网站上读过这篇文章,但我无法清楚地理解它。


当前回答

了解android环境的简单示例:

每个老板都有一个助手来照顾,来完成所有不那么重要和耗时的任务。如果需要一份文件或一杯咖啡,一名助手就在路上。一些老板几乎不知道办公室里发生了什么,所以他们也会询问助手。他们自己做一些工作,但在大多数其他事情上,他们需要助手的帮助。

在这种情况下,

Boss–是Android应用程序

助手–是一个上下文

文件/咖啡杯–是资源

当我们需要获取有关应用程序的不同部分(如活动、应用程序等)的信息时,我们通常会调用上下文。

涉及上下文的某些操作(需要助手的操作):

加载公共资源创建动态视图显示Toast消息启动活动等。

获取上下文的不同方式:

getContext()

getBaseContext()

getApplicationContext()

this

其他回答

上下文是我们大多数人所称的应用程序。它由Android系统制作,只能执行应用程序所能执行的操作。在Tomcat中,Context也是我所称的应用程序。

有一个上下文包含多个活动,每个活动可能有多个视图。

很明显,有些人会说它不适合因为这个或那个,他们可能是对的,但是说Context是您当前的应用程序将有助于您理解在方法参数中放置的内容。

上下文是对当前对象的引用。上下文还允许访问有关应用程序环境的信息。

简单地说,Androids环境是一个混乱,除非你不再担心,否则你不会喜欢它。

Android上下文包括:

上帝反对。当你开始为Android开发时,你想在所有应用程序中传递的东西,但当你稍微接近编程、测试和Android本身时,就会避免这样做。不明确的依赖关系。内存泄漏的常见来源。用于测试的PITA。Android系统用于分配权限、资源、偏好、服务、广播、样式、显示对话框和膨胀布局的实际上下文。对于一些单独的事情,您需要不同的Context实例(显然,您不能显示来自应用程序或服务上下文的对话框;来自应用程序和活动上下文的布局可能不同)。

上下文意味着Android可以知道我应该参加哪些活动。

1-Toast.makeText(上下文,“输入所有详细信息”,Toast.LNGTH_SHORT).show();它用于此。上下文上下文=ActivityName.this;

2-startActivity(新的Intent(context,LoginActivity.class));

在这个上下文中,意味着你想从哪个活动转到其他活动。context或ActivityName。这比getContext和getApplyinContext更快。

android.content.Context类的实例提供到执行应用程序的android系统的连接。例如,您可以通过上下文检查当前设备显示的大小。

它还允许访问项目的资源。它是有关应用程序环境的全局信息的接口。

Context类还提供对Android服务的访问,例如报警管理器以触发基于时间的事件。

活动和服务扩展了Context类。因此,它们可以直接用于访问上下文。