此关键字作为新Intent的参数

时间:2015-07-05 14:40:30

标签: android

来自Android文档:

public Intent (Context packageContext, Class<?> cls)
Parameters
packageContext  A Context of the application package implementing this class.
cls     The component class that is to be used for the intent.

如果我错了,请纠正我:

  1. A Context of the application package implementing this class.表示 包含我想要开始的类的包。
  2. this不应该工作(但它有效,为什么?),因为this指的是当前的活动,而不是文档中所说的application package

1 个答案:

答案 0 :(得分:1)

  

实现此类的应用程序包的上下文。表示包含我想要开始的类的包。

在这里,&#34;应用程序包&#34;,在大多数情况下,只是指你的应用程序。

  

这不应该工作

是的,应该。

  

这指的是当前的Activity,而不是文档中所说的应用程序包。

假设当前活动和要启动的活动都在同一个应用程序中,那么this工作正常,因为它是实现此类的应用程序包的上下文&#34; 。 this不起作用的地方是您尝试从其他应用程序启动活动,在这种情况下,您使用隐式Intent模式,使用操作字符串(例如,ACTION_VIEW)而不是Context和Java类。