Bundle使用心得

来源:互联网 发布:网络科学导论 编辑:程序博客网 时间:2024/06/06 13:59

由于Android没有session,那么如何在不同的Activity之间传递数据呢?可以通过Bundle实现,其功能相当于web中的session.

 

下面贴出使用的关键代码:

 

    Activity发送端:

 

    //创建一个新的Intent对象,并指定class
    Intent intent =new Intent();
    intent.setClass(Demo03_10.this, Demo03_10_1.class);  //从Demo03_10这个类转到Demo03_10_1.class
    
    //实例化Bundle对象,用于数据传递
    Bundle bundle =new Bundle();
    bundle.putDouble("height", height);    //数据键值对
    bundle.putString("sex", sex);              //数据键值对

    
    //将bundle对象绑定到intent
    intent.putExtras(bundle);     //将Bundle绑定到Intent,通过putExtras函数实现
    startActivity(intent);             //启动新的Activity

  

Activity接收端:

    //取得Intent对象中的数据
  Bundle bundle = this.getIntent().getExtras();     //通过getIntent().getExtras()实现
  String sex = bundle.getString("sex");    //之前传值定义的类型和接受变量类型要一致
  double height = bundle.getDouble("height");

 

  //下面就可以使用传过来的变量继续后续逻辑

 

总结:Bundle主要通过Intent在不同的Activity来传递和接收数据。

 

 

原创粉丝点击