在Android中,Bundle常用来进行Activity之间值传递。
在日常开发中,对于Activity之间的值传递,我有的时候会选择用bundle,有的时候会之间用intent。今天正好赶上提测,总结一下。
一、Bundle与intent应用场景是什么?到底什么关系?
遇到问题第一步肯定是查看源码,通过查看源码发现,intent内部其实也是通过bundle传值。
public Intent putExtra(String name, Serializable value) {
if (mExtras == null) {
mExtras = new Bundle();
}
mExtras.putSerializable(name, value);
return this;
}
intent只是对于bundle的封装,没有bundle使用起来灵活,故在以后的开发过程中
应尽量使用bundle。
二、Bundle如何使用?
bundle类似于map,用于存放键值对。
1、存放String、int等:bundle.putString、bundle.putInt
2、存放Object:bundle.putSerializable
三、Bundle通信原理(待日后补充)