您的位置:首页 > 移动开发 > Android开发

Android Bundle类

2014-03-05 10:10 459 查看

Android Bundle类

第一次使用bundle类感觉在传递数据时非常的方便,有必要看一下
bundle类实际上是一个包装数据的,用数据名和数据组成,当其他地方需要提取数据时只要寻找数据名就可以了
以一个handler传送数据为例

task = new TimerTask(){

public void run() {

String[] xyz = new String[3];//发送给activity用的

//2s生成xyz的随机数

x=(float) (Math.random()*(-2)+1);

y=(float) (Math.random()*(-2)+1);

z=(float) (Math.random()*(-2)+1);

Message msg = new Message();

msg.what=0x123;//这是发送给activity类中用来更新文本框中XYZ值得

Bundle bundle = new Bundle();//对数据包装后用MSG发送

//要发送的是一个字符串数组,第一个参数是指定数据的名,当接收数据时可以用这个名来选择获取哪个数据,很方便,第二个参数是发送的数组

bundle.putStringArray("xyz", xyz);

msg.setData(bundle);

handler2.sendMessage(msg);//handler2指的是接收处的Handler实例,这里因为不是同一类,所以要用构造函数将接受类的handler实例传递过


}

};

timer.schedule(task, 0, 7000);

}

这里运用的是bundle.putStringArray("xyz", xyz);其实还有很多其他的类型的数据可以使用
其中第一个参数是给数组起的名字,字符类型的,随便起只要在提取数据的时候也用这个名字来识别提取的是哪个数据就好,第二个参数代表的是数据,上面程序中是字符型数组

接收方
xyz=msg.getData().getStringArray("xyz");//参数xyz是发送方bundle.putStringArray("xyz", xyz);bundle.putStringArray("xyz", xyz);第一个参数对应,表示要取出的是哪个数据
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: