Activity之间的页面跳转(直接、带数据、带返回值的跳转)

一、直接跳转(可以实现对网页、拨号界面、发送邮件、短息界面的的直接跳转)

构造方法: Intent Intent = new Intent(String action,Uri uri);

  1. Intent Intent  = new Intent();
  2. startActivity(intent);

二、带数据的跳转(由MainActivity界面向OtherActivity传递数据)

①MainActivity:

        String data="datas";

        Intent Intent  = new Intent(MainActivity.this,OtherActivity.class);

        intent.putExtra("dataName",data);         //用putExtra来封装要传递的数据

        startActivity(intent);

②OtherActivity:

        Intent Intent = this.getIntent();    //获取父Activity传递给字Activity的Intent对象

        String datas = intent.getStringExtra("dataName");             //获取父Activity传递过来的数据

另一种写法:我喜欢直接用intent传递数据 , 不经过bundle来传递数据 . 其实这两种方式没有区别的 。

        Bundle bundle = this.getIntent().getExtras();

        String datas = bundle.getString("dataName");

三、带返回值的跳转(从A跳转到B可以携带或不携带数据,但由B跳转到A必须携带数据)

①由A至B可以由上面的步骤完成

    启动页面跳转则用    startActivityForResult()方法

     startActivityForResult(Intent Intent,int requestCode)

    其中intent           决定要启动的Activity

           requestCode      请求码     

②由B跳转至A必须在A中重载onActivityResult()方法,来获取B中返回来的值

      protected void onActivityResult(int requestCode, int resultCode,Intent data){

}

注:对于Activity之间的数据传递,他不仅能够传递简单的数据类型,来能传递非常复杂的数据类型;

Android五种数据传递方法汇总https://blog.csdn.net/rely_on_yourself/article/details/81539986

 

 

 

 

 

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值