在我的 android 应用程序中,我总是使用 Intent
类的直接 putExtra()
函数来向新的 Activity
传递任意数量的值。
像这样:
Intent i = new Intent(this, MyActivity.class);
i.putExtra(ID_EXTRA1, "1");
i.putExtra(ID_EXTRA2, "111");
startActivity(i);
我知道安卓系统中的 Bundle
,我也看到人们使用 Bundle
将值传递给新的 Activity
。
像这样:
Intent intent = new Intent(this, MyActivity.class);
Bundle extras = new Bundle();
extras.putString("EXTRA_USERNAME","my_username");
extras.putString("EXTRA_PASSWORD","my_password");
intent.putExtras(extras);
startActivity(intent);
我有两个疑问。< br/> 如果我可以通过将值直接传递给 Intent
来将值传递给新的 Activity
,为什么要使用 Bundle
?
使用 Bundle
代替直接 Intent
putExtra()
的优点是什么?