在用多线程的时候,会需要在Message中传递自己定义的Arraylist
但是呢,Messge的数据传递必须要用Bundle
所以需要将自定义的ArrayList<Object>放入Bundle
解决方法是用Bundle.putParcelableArrayList(list)
当然不能直接把list放入bundle中,必须经过加工
方法如下:
Message msg = new Message();
Bundle bundle = new Bundle();
ArrayList list = new ArrayList(); //这个list用于在budnle中传递 需要传递的ArrayList<Object>
list.add(ArrayList<Object>)
bundle.putParcelableArrayList("list",list)
msg.setDate(bundle)
Handler.sendMessage(msg)
取的时候:
ArrayList list = bundle.getParcelableArrayList("list");
list2= (List<Object>) list.get(0);//强转成你自己定义的list,这样list2就是你传过来的那个list了。