Android中的上下文究竟是什么?为什么需要它?

时间:2011-07-14 05:07:30

标签: android android-context

我也是Android开发和软件开发的新手。 我一直在Android代码中看到这个称为“上下文”的术语。 我知道它是android.content包中的一个类,但我不明白究竟是什么,为什么它需要在很多地方,特别是在构造函数中。

有人可以向我解释这个词。

1 个答案:

答案 0 :(得分:1)

顾名思义,它是应用程序/对象当前状态的上下文。它允许新创建的对象了解正在发生的事情。通常,您可以调用它来获取有关程序其他部分(活动,包/应用程序)的信息

您可以通过调用getApplicationContext(),getContext(),getBaseContext()或this(在活动类中时)来获取上下文。

上下文的典型用法:

Creating New objects: Creating new views, adapters, listeners:

TextView tv = new TextView(getContext()); ListAdapter adapter = new SimpleCursorAdapter(getApplicationContext(),..);

Accessing Standard Common Resources: Services like LAYOUT_INFLATER_SERVICE, SharedPreferences:

context.getSystemService(LAYOUT_INFLATER_SERVICE)
getApplicationContext().getSharedPreferences(name, mode);

Accessing Components Implicitly: Regarding content providers, broadcasts, intent

getApplicationContext().getContentResolver().query(uri,...);

来自here

的副本