Bundle作用:
Activity之间存取数据用。是一个键值对。提供了一系列方法用于保存数据。
Bundle用法,通过Message发送:
建立对象
Bundle bundle = new Bundle();
存数据,put各种数据类型,putString/putInt,我这里是李刚老师的CalPrime例程的。UPPER_NUM是一个String,
是通过etNum这个EditText获取数据,转换为Int。
bundle.putInt(UPPER_NUM, Integer.parseInt(etNum.getText().toString()));
建立Message对象并放入Bundle数据
Message msg = new Message();
msg.setData(bundle);
这里需要提个醒,new Message这里,也可以写成以下代码,这样写是直接拿已有的来用,不用新建,以节约内存。
Message msg = calThread.mHandler.obtainMessage();
接着往新进程中发送数据
calThread.mHandler.sendMessage(msg);
在另外一个线程中从Message读取数据放到upper里,这个是在新进程的handleMessage函数里读取。
int upper = msg.getData().getInt(UPPER_NUM);