getExtras和getBundleExtras有什么区别?

时间:2012-03-06 02:14:25

标签: android android-layout android-intent

有人可以向我解释一下getExtras()getBundleExtras()之间的区别吗?

2 个答案:

答案 0 :(得分:19)

getBundleExtra("String")获取名为String的包。

getExtras()获取包含放入数组中的所有项目的包。

可以使用putExtra(Bundle, String tag)命令放置一个包,因此getBundleExtra()将返回该值。

答案 1 :(得分:9)

值得注意的是,getExtras()返回了置于intent中的所有项目的 copy ,其实现如下:

4433    public Bundle getExtras() {
4434        return (mExtras != null)
4435                ? new Bundle(mExtras)
4436                : null;
4437    }

因此调用intent.getExtras().putInt(...)

不是一个好主意