android 在子线程中如何把自定义对象传到handler中处理

android 在子线程中如何把自定义对象传到handler中处理

一般来说,Thread中要把数据传出去就用message、 bundle、handler来配合使用,代码如下

Message msg=new Message();
Bundle b=new Bundle();
b.putString("context", object.toString());
msg.setData(b);
Log.e("OUT", object.toString());
handler.sendMessage(msg);

但是,bundle能存的数据有限,如图所示

android 在子线程中如何把自定义对象传到handler中处理

如果我想传递自定义的类怎么办

其实很简单只要把

        msg.what=0x001;
        msg.obj=MyObject;//把一个自定义的类传出去
        handler.sendMessage(msg);
//        接收的时候进行类型转换即可
        MyObject mo=(MyObject) msg.obj();

就是这样啦,是不是很简单呢!!!!