比接受的答案更整洁的方法是使用 或 。Serializable
Parcelable
以下是如何使用它的示例:Serializable
在您的第一次活动中...
Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
intent.putExtra("EXTRA_NEXT_ACTIVITY_CLASS", ThirdActivity.class);
startActivity(intent);
然后在你的第二个活动中...
Bundle extras = getIntent().getExtras();
Class nextActivityClass = (Class<Activity>)extras.getSerializable("EXTRA_NEXT_ACTIVITY_CLASS");
Intent intent = new Intent(SecondActivity.this, nextActivityClass);
startActivity(intent);
这样做几乎是一样的,除了你会在上面的代码中用.Parcelable
extras.getSerializable("EXTRA_NEXT_ACTIVITY_CLASS")
extras.getParcelable("EXTRA_NEXT_ACTIVITY_CLASS")
Parcelable 方法将更快,但更难设置(因为您需要实现第三个活动 - 请参阅 http://developer.android.com/reference/android/os/Parcelable.html)。Parcelable