zoukankan      html  css  js  c++  java
  • Intent 传递Map数据

    android开发默认情况下,通过Bundle bundle=new Bundle();传递值是不能直接传递map对象的,解决办法:

    第一步:封装自己的map,实现序列化即可 

    /**
     *序列化map供Bundle传递map使用
     */
    @SuppressWarnings("serial")
    public class SerializableMap implements Serializable {
        private Map<String, Object> map;
    
        public Map<String, Object> getMap() {
            return map;
        }
    
        public void setMap(Map<String, Object> map) {
            this.map = map;
        }
    }

    第二步:传递数据:

            Bundle bundle1 = new Bundle();
            SerializableMap Mymap=new SerializableMap();
            Mymap.setMap(servicemsg);
            bundle1.putSerializable("servicemsg", Mymap);
            startActivity(ServiceMessageActivity.class, bundle1);

    第三步:接收数据:

            Bundle extras = getIntent().getExtras();
            SerializableMap serializable = (SerializableMap) extras.getSerializable("servicemsg");
            Map<String, Object> map = serializable.getMap();
  • 相关阅读:
    母牛
    831. KMP字符串(模板)
    830. 单调栈
    829. 模拟队列
    827. 双链表
    826. 单链表
    易错之 Java字符串比较
    圆桌问题 (ArrayList+模拟)
    士兵队列训练问题 (队列+模拟)
    线段树模板集合
  • 原文地址:https://www.cnblogs.com/dj168/p/4469618.html
Copyright © 2011-2022 走看看