正确启动意图。这与MainActivity.this之间的区别

时间:2016-09-20 09:09:56

标签: android android-intent

使用以下命令从某些MainActivity(例如)开始新意图的区别是什么:

Intent intent = new Intent(this, SecondActivity.class);

VS

Intent intent = new Intent(MainActivity.this, SecondActivity.class);

1 个答案:

答案 0 :(得分:3)

意图的工作没有区别,但我们在不同的情况下使用这两种说法。

实际上,为了开始新活动,我们使用意图:

Intent intent = new Intent(Context packageContext, Class<?> cls);

在packageContext上,我们必须传递上下文。所以这就是我们将'this'作为当前活动的背景传递的原因。

但是如果我们从匿名onClickListener这样的匿名类中做同样的事情,那么这就是指那个ananymous类的实例。所以在这种情况下我们使用'MainActivity.this'这是MainActivity类的上下文。