在做自动保存草稿的功能遇到集合数据的问题,先贴自动保存草稿的代码

/**
* 每5 秒保存一次草稿
*/
private void startDraftTimerTask(){
if (draftTimer == null) {
draftTimer = new Timer(true);
draftTimer.schedule(new TimerTask() {
@Override
public void run() {
if(!isStopSave){
initDraft();
addCacheDraft();
}
}
}, 5000, 5000);
}
}
 initDraft()这个方法里面会执行下面的代码
 //保存已选照片
Bimp.address.clear();
for (int i = 0; i < photoList.size(); i++) {
Bimp.address.add(photoList.get(i).getPath());
}
mDraft.setImageList(Bimp.address);
自动保存草稿每5秒保存一次,配置草稿的内容 这个mDraft.setImageList(Bimp.address); 
mDraft这个类是这个 ModelDraft 实体类
/**
* 类说明: 草稿箱
*
* @author wz
* @version 1.0
* @date 2015-1-26
*/
public class ModelDraft extends SociaxItem {
/**
* 图片地址列表集合
*/
private ArrayList<String> imageList = new ArrayList<>(); public ArrayList<String> getImageList() {
return imageList;
} public void setImageList(ArrayList<String> imageList) {
if(this.imageList.size() > 0) {
this.imageList.clear();
}
      this.imageList.=imageList;
    }
}
每次保存草稿都会执行下面清空数据并赋值
mDraft.setImageList(Bimp.address);
 if(this.imageList.size() > 0) {
this.imageList.clear();
}
this.imageList.=imageList;
每次调用最后导致集合imageList 都是空集合,地址一样导致全部清空,一直没找见问题都不知道啥问题导致的
最后修改为
if(this.imageList.size() > 0) {
this.imageList.clear();
}
this.imageList.addAll(imageList)
然后数据就都有了,在此记录一下这个问题,以后集合使用尽量使用添加,不要直接赋值
by 郝金刚
												

最新文章

  1. malloc与kmalloc
  2. std::string::npos mean
  3. bzoj1193
  4. C#网络通信
  5. 使用Yeoman搭建 AngularJS 应用 (4) —— 让我们搭建一个网页应用
  6. KVO - 键值观察
  7. springMVC工作原理图
  8. winform 菜单项显示历史记录 分类: WinForm 2014-07-11 18:15 196人阅读 评论(0) 收藏
  9. 校园招聘 - 比較easy的面试题
  10. 青铜器RDM全面支持CMMI、GJB5000A L2~L5认证评估
  11. 网络基础之IP地址与子网划分
  12. getOutputStream() has already been called for this response
  13. git(一)快速入门
  14. Nginx 学习笔记(八)http和https跨域问题解决
  15. vue 拍照上传图片 demo
  16. unity 安装破解提示partern not found和tutorials学习
  17. python之Counter类:计算序列中出现次数最多的元素
  18. CentOS7 安装 hbase1.3.3
  19. css优化,提高性能
  20. PHP 小技巧之如何避免参数多次传递?

热门文章

  1. Entrez Direct
  2. 嵌入式Linux环境搭建备忘
  3. Tomcat之web.xml中的&lt;url-pattern&gt;标签
  4. Intellij Idea 创建JavaWeb项目
  5. 给B公司的一些建议(又一篇烂尾的文章)
  6. 1180: [CROATIAN2009]OTOCI(LCT)
  7. Go语言之并发编程(一)
  8. Asp.net自定义控件开发任我行(4)-ViewState保存控件状态
  9. AutoMapper教程
  10. seajs引入jquery