Bundle数据通过Message传送

来源:互联网 发布:ff14l雷霆捏脸数据 编辑:程序博客网 时间:2024/06/05 04:43
Bundle作用:
Activity之间存取数据用。是一个键值对。提供了一系列方法用于保存数据。
Bundle用法,通过Message发送:
   建立对象
    
  1. Bundle bundle = new Bundle();
    存数据,put各种数据类型,putString/putInt,我这里是李刚老师的CalPrime例程的。UPPER_NUM是一个String,
    是通过etNum这个EditText获取数据,转换为Int。
  1. bundle.putInt(UPPER_NUM, Integer.parseInt(etNum.getText().toString()));
    建立Message对象并放入Bundle数据
  1. Message msg = new Message();
  2. msg.setData(bundle);
   这里需要提个醒,new Message这里,也可以写成以下代码,这样写是直接拿已有的来用,不用新建,以节约内存。
  1. Message msg = calThread.mHandler.obtainMessage();
 接着往新进程中发送数据 
  1. calThread.mHandler.sendMessage(msg);

    在另外一个线程中从Message读取数据放到upper里,这个是在新进程的handleMessage函数里读取。
  1. int upper = msg.getData().getInt(UPPER_NUM);
   




来自为知笔记(Wiz)


0 0