【发布时间】:2013-02-21 00:49:38
【问题描述】:
在我的 android 应用程序中,我总是使用 Intent 类的直接 putExtra() 函数将任意数量的值传递给新的 Activity。
像这样:
Intent i = new Intent(this, MyActivity.class);
i.putExtra(ID_EXTRA1, "1");
i.putExtra(ID_EXTRA2, "111");
startActivity(i);
我知道 Android 中的 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);
在这里我有两个疑问。
如果我可以通过将值直接传递给 Intent 来将值传递给新的 Activity,我为什么要使用 Bundle?
用Bundle代替直接IntentputExtra()有什么好处?
【问题讨论】:
标签: android android-intent android-activity bundle extra