使用Bundle传递复杂数据

原创 2015年11月18日 22:41:58

第一种方法

1、在第一个activity中

<span style="font-size:18px;"><span style="white-space:pre">	</span>Button start = (Button)findViewById(R.id.toSecond);
        start.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent i = new Intent(MainActivity.this,SecondActivity.class);
                Bundle data = new Bundle();
                data.putString("name","Jack");
                data.putInt("age",23);
                i.putExtras(data);
                startActivity(i);
            }
        });</span>

2、在第二个activity中进行数据读取

<span style="font-size:18px;"><span style="font-size:18px;">Intent i = getIntent();
        Bundle data = i.getExtras();
        TextView textView = (TextView) findViewById(R.id.textView);
        textView.setText(String.format("name=%s,age=%d,name1=%s",data.getString("name"),data.getInt("age"),data.getString("name1","LJaer")));</span></span>

通过向intent中传入一个Bundle类型的字符串进行数据传递,name1 没有数值,进行默认LJaer设置


第二种方法

1、在第一个activity中

<span style="font-size:18px;">start.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent i = new Intent(MainActivity.this,SecondActivity.class);
                Bundle data = new Bundle();
                data.putString("name","Jack");
                data.putInt("age",23);
                //i.putExtras(data);
                i.putExtra("info",data);
                startActivity(i);
            }
        });</span>
<span style="font-size:18px;">
</span>
<span style="font-size:18px;">2、在第二个activity中</span>
<pre name="code" class="java"><span style="font-size:18px;">Intent i = getIntent();
        //Bundle data = i.getExtras();
        Bundle data = i.getBundleExtra("info");
        TextView textView = (TextView) findViewById(R.id.textView);
        textView.setText(String.format("name=%s,age=%d,name1=%s",data.getString("name"),data.getInt("age"),data.getString("name1","LJaer")));</span>





版权声明:本文为博主原创文章,未经博主允许不得转载。

实现Activity发送数据给Service ,基于Message和Bundle发送复杂数据

Activity发送数据给Service 分两种情况 方法1、发送单次数据:    一般是在启动Service的时候发送数据给Service,只发送一次,此处值给出比较关键的代码      Ac...

Android为什么要设计出Bundle而不是直接使用HashMap来进行数据传递

1.Bundle内部是由ArrayMap实现的,ArrayMap的内部实现是两个数组,一个int数组是存储对象数据对应下标,一个对象数组保存key和value,内部使用二分法对key进行排序,所以在添...

Android使用intent、bundle传递数据

有了问题就搜索百度,搜不到在google,很多资源和答案都是在csdn上找到的,自己使用了别人那么多的资源,自己却没有贡献过什么,甚感羞愧,就把自己写的一点传上来,有不对的地方,欢迎指导。  这个de...

使用Bundle在Activity之间传递数据

Bundle可能过put****()方法添加各种类型的数据,Intent也可以通过putExtras(Bundle)将数据添加进去,然后通过startActivity()跳到下一下Activity的时...

使用bundle在多个activity之间传递数据

使用bundle在多个activity之间传递数据

android使用Intent传递数据 2 种方式(Intent和Bundle)

在两个Activity之间传递数据,最终都是通过Intent传递,但设置数据和保存数据方式有两种(使用Intent 和 Bundle),分别对应如下: 设置数据(MainActivity.java) ...

Android笔记三.不同Activity之间的传递数据(Bundle对象的使用)

不同Activity之间的传递数据 Jiangdg_VIP http://blog.csdn.net/u012637501 一、API类说明 1.Bundle类-实现数据传递 (1)...

使用Intent Bundle在Activity间传递数据

前面的帖子介绍过Bundle类:http://blog.csdn.net/zhangjikuan/article/details/20528653 这里说一下...

Android中级教程之(五)----->不同Activity之间的数据传递,Bundle对象的使用!

在上一节例子中,介绍了如何在Activity中调用另一个Activity,但若需要在调用 另外一个Activity的同时传递数据,那么就需要利用Android.os.Bundle对象封装数据的能力,将...

在安卓中使用Bundle在Activity之间传递数据

此文主要还是针对刚开始接触的小白,希望对你们有点帮助吧 第一个Activity package com.example.jsontext; import android.os.Bundle;...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用Bundle传递复杂数据
举报原因:
原因补充:

(最多只允许输入30个字)