我看到的Android开始活动的以下两个例子:

实施例1

Intent myIntent = new Intent(CurrentActivity.this, NextActivity.class);
CurrentActivity.this.startActivity(myIntent);

实施例2

// Calling activity
NextActivity.show(this)

// In the called activity
static void show(Context context) {
        final Intent intent = new Intent(context, NextActivity.class);
        context.startActivity(intent);
}

看来这两个例子之间的明显区别是,你附加的活动是如何创建活动的执行逻辑。是否还有其他的主要区别? (例如,调用活动告知等待,直到被叫活性在一种情况下完成,而不是在其他等)

有帮助吗?

解决方案

我看不出有什么区别你2种方法,不是在你的第一种方法的两行代码等恰好位于这恰好位于2号活性的类的静态方法。

这被执行以启动活动的代码的实际行是相同的。因此的2种方法的行为将是相同的。

其他提示

此外,代码可以缩短到

context.startActivity(new Intent (context, NextActivity.class));

唯一的理由创建意图作为现场的一个实例是,如果你需要设置标志或添加额外等。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top