Intent 能否传送数据库类型, 在两个界面之间传送数据库能不能,或者自己定义的类呢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以,继承parcelable类或者是使用putserilizable, 要传数据库的话,不如做一个content provider了,这样代码更干净点。 content provider赞成用这个了,比较方便而且很好用啊, 一般来说, Intent具有单例的特性.就是一个intent往往只有一个实例. 如果是这样,你可以试试静态属性,或者单例模式1 静态属性public class DBConnPool{public static Record record = null;} 发送方: DBConnPool.record = .... 接收方 rec = DBConnPool.record; 不用intent了. 2 单例方式 public class DataPool{ static DataPool ins = null; public DataPool getIns(){ if(ins == null) ins = new DataPool(); return ins; } HashMap<String,Object> map = new HashMap<String,Object>(); public Object getData(String name){ if(map.contains(name)) return map.get(name); else return null; } public addData(String name,Object data){ map.put(name,data) } }发送方 : DataPool.getIns().addData("mydataid",record);接收方: record = DataPool.getIns().getData("mydataid"); 敲了半天代码,发现有几个地方大错了一般来说, Intent具有单例的特性.就是一个intent往往只有一个实例. 如果是这样,你可以试试静态属性,或者单例模式 . 下面演示的DataPool支持复杂的数据传递. 适用性很好. 1 静态属性public class DBConnPool{public static Record record = null;} 发送方: DBConnPool.record = .... 接收方 rec = DBConnPool.record; 不用intent.putExtre传参数了. 2 单例方式 public class DataPool{ static DataPool ins = null; public DataPool getIns(){ if(ins == null) ins = new DataPool(); return ins; } HashMap<String,Object> map = new HashMap<String,Object>(); public Object getData(String name){ if(map.contains(name)) return map.get(name); else return null; } public addData(String name,Object data){ map.put(name,data) } }发送方 : DataPool.getIns().addData("mydataid",record);接收方: record = DataPool.getIns().getData("mydataid"); content provider用这个吧,这个类的目的就是用来暴露应用的数据,不需要通过intent传递 求助:android中,如何用css调用apk中的字体 GridView getview 重复调用 请教contacts中data表的is_super_primary的更新机制 如何把GPIO口控制的驱动注册为 /dev/gpioX 的形式. 什么时候使用消息循环 @@怎样获取蓝牙设备类别@@ Android 自定义dialog更新数据失败 张泽华2014年最新安卓开发视频公布下载 关于Viewpager页卡下某一个布局中的listview的数据添加问题 求助开机自启动问题 BOOT_COMPLETED 哪位高手能帮忙解决一下ksoap2发送带附件的webservice 关于不同分辩率的问题
public static Record record = null;
} 发送方: DBConnPool.record = ....
接收方 rec = DBConnPool.record; 不用intent了. 2 单例方式
public class DataPool{
static DataPool ins = null;
public DataPool getIns(){
if(ins == null) ins = new DataPool(); return ins;
}
HashMap<String,Object> map = new HashMap<String,Object>();
public Object getData(String name){
if(map.contains(name)) return map.get(name);
else return null;
}
public addData(String name,Object data){
map.put(name,data)
}
}发送方 : DataPool.getIns().addData("mydataid",record);
接收方: record = DataPool.getIns().getData("mydataid");
一般来说, Intent具有单例的特性.就是一个intent往往只有一个实例. 如果是这样,你可以试试静态属性,或者单例模式 . 下面演示的DataPool支持复杂的数据传递. 适用性很好.
1 静态属性public class DBConnPool{
public static Record record = null;
} 发送方: DBConnPool.record = ....
接收方 rec = DBConnPool.record; 不用intent.putExtre传参数了.
2 单例方式
public class DataPool{
static DataPool ins = null;
public DataPool getIns(){
if(ins == null) ins = new DataPool(); return ins;
}
HashMap<String,Object> map = new HashMap<String,Object>();
public Object getData(String name){
if(map.contains(name)) return map.get(name);
else return null;
}
public addData(String name,Object data){
map.put(name,data)
}
}发送方 : DataPool.getIns().addData("mydataid",record);
接收方: record = DataPool.getIns().getData("mydataid");