Context在Android中启动活动的用途是什么?

时间:2015-08-11 04:14:01

标签: android

当启动另一个活动时,使用方法startActivity(someintent),该意图同时包含上下文和类对象的参数this

this参数的用途是什么,因为上下文已经知道,因为活动本身是上下文的子类?并且,鉴于我创建了一个意图:

Intent myIntent = new Intent(this,someclass.class);

在创建startActivity时指定的this上下文中,我只能使用方法myIntent。换句话说,我不能将startActivity与其他活动使用相同的意图。

1 个答案:

答案 0 :(得分:1)

有几个原因:

  1. 在活动中创建新this时,您无需使用Intent作为上下文。 (例如,您可以创建一个ContextThemeWrapper来应用单独的主题。)
  2. 可以从Intent外部调用Activity构造函数。无论如何,Intent构造函数无法知道哪个对象正在调用构造函数(如果有的话甚至可以从静态上下文中调用它)。
  3. 除了Intent之外,startActivity()还有其他用途。