zoukankan      html  css  js  c++  java
  • 使用Intent在活动之间穿梭(《第一行代码》读书笔记)

    以下全是个人理解//瞎扯

    其实活动理解理解起来就像一个个函数

    那么Intent就是调用函数和参数传递

    可以有无参,仅仅是调用

    Intent intent = new Intent(A.this, B.class);
    
    startActivity(intent);

    由活动A调用活动B,无参,无返回值,当然B调用结束,要回到A。

    可以有参数

    A
    ---
    Intent intent = new Intent(A.this, B.class); intent.putExtra( "这里是参数的键" , "这里是参数,本样例是字符串,也可以是其他的类型" ); // 传参 startActivity(intent);
    B
    --- Intent intent
    = getIntent(); String data = intent.getStringExtra("这里是参数的键");  //取出参数

    由活动A调用活动B,无参,无返回值。

    可以传参当然也可以返回参数

    A
    ---
    Intent intent = new Intent(A.this, B.class);
    startActivity(intent, 1); //1是请求码,要求唯一
    
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {  // 接收返回的值
        switch(requestCode) { //请求码是唯一的
        case 1:
            if (resultCode == RESULT_OK) {
                String returnData = data.getStringExtra("data_return");
            }
            break;
        dafault:
        }
    }
    
    
    B
    ---
    Intent intent = getIntent();
    intent.putExtra("data_return", "hey~");
    setResult(RESULT_OK/RESULT_CANCELED, intent);

    其实吧 可以把活动间通信想象成两地用信鸽传信,而Intent就是那个信鸽。

    信鸽可以不带消息,就只是一个鸽子,也可以在腿上绑上信,放信鸽的人和收信鸽的利用鸽子放信的姿势当然是一样的啦。

    但是可能有很多鸽子,所以如果鸽子传信回来,一定要看看,是不是自己的鸽子,于是给鸽子编个号,防止认错。

  • 相关阅读:
    大工程(bzoj 3611)
    消耗战(bzoj 2286)
    Computer(hdu 2196)
    文件排版(codevs 1300)
    洛谷 P2015 二叉苹果树
    洛谷 P2014 选课
    洛谷 P1352 没有上司的舞会
    COGS 505. 城市
    洛谷 P1306 斐波那契公约数
    洛谷 P1962 斐波那契数列
  • 原文地址:https://www.cnblogs.com/wenruo/p/5654788.html
Copyright © 2011-2022 走看看