Android:页面跳转传参方式一,页面跳转传参方式二

 一、页面跳转传参方式一

跳转的过程如何传参:也就是页面之间如何传递参数,有点像函数调用如何传参,页面跳转也要传参。

        复制一个工程

        

 你要跳转,(现在的代码如下),intent 既然能设置跳转到哪个页面,当然也能设置参数

 这是一个方法的重载

现在的代码

 第一个可以改成      “MyData”

第二个可以改成      "冰糖李子帅"

intent.putExtra("MyData", "冰糖李子帅");

设置完以后,调用    startActivity(intent); 的时候   就会传参

 那我的SecondActivity.java 如何获取呢?

第二个页面启动的时候,我们搞一个Intent来获取         Intent i;

如果直接i.get();   获取的话。你会发现他(i)是一个空的。  

我们没有new 它( Intent i;),也没有指向

这个时候你如果new 它(Intent i;)       Intent i = new Intent();  这个就不是你想要的了

怎么办呢?        Intent i = this.getIntent();

把    SecondActivity    里面带有的  Intent  给他获取出来

 

 然后i.getStringExtra(name);

 因为第一个页面传给他的是字符        "冰糖李子帅"        第20行 

"MyData"是个键   “冰糖李子帅”是个值

你要在键里面获取出值

 

 那么值是什么呢?

然后我们定义一个私有的      private String data;

让    data = i.getStringExtra("myData");
        

运行一下,我看不到任何东西,是传递失败还是说这边的日志不太容易找到你想看的内容呢?

都不好说

 这时候我们可以用Toast.makeText

 补充一下

运行一下

收到的数据是null

 

 发现是第19行写错了,修改完以后运行

 

同样的,你要给第三个页面传下去,它也是一样的

现在整体的代码

 

 

 运行一下

 

二、页面跳转传参方式二

        

当数据比较多的时候,我们需要借助一个对象,要借助一个类Bundle

先复制工程

 

   需要 用到了                Bundle bundle = new Bundle();   

 我们可以让bundle 里面put。。。           bundle.putString(key, value)     

                补充成          bundle.putString("MyData", "冰糖李子1");

还可以继续放        bundle.putInt("ID", 80808080);    

intent有个     API     能把   bundle    放进来        intent.putExtras(extras)

                补充成        ·intent.putExtras(bundle);

这样我们跳转的时候,就有一个整型数,一个字符串

 

 我们SecondActivity.java拿到手以后,去搞一个bundle

    i.getExtras();  他返回的肯定是bundle,        Bundle b  = i.getExtras();

 

 运行一下

 

完整的代码

 

 

 运行结果

 

 

 

 

 

  • 4
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值