我们都知道intet,能传递的数据包括 8大基本类型和对应数据,还有就是String,还有就是实现了Parcelable和Serializable 序列化类型的数据,以及它们的数组/列表数据。
但是如果我们想传递一个map集合应该怎么办呢?
可以这么做:将结合包装下
public class SerializableMap implements Serializable { public Map<String, String> getMap() { return map; } public void setMap(Map<String, String> map) { this.map = map; } private Map<String,String> map; }
然后使用:
SerializableMap serializableMap = new SerializableMap(); serializableMap.setMap(param); WebInterface.searchWithKey(this.cxt, param.get("keywords"),serializableMap );对应取出:
serializableExtra = (SerializableMap) getIntent().getSerializableExtra(SEARCH_BY_MAP);