Intent 向下一个活动传递数据

来源:互联网 发布:unity3d中文手册下载 编辑:程序博客网 时间:2024/04/29 13:56

/** * Indent传值,第一个页面传值 * putExtra() * 第一个参数:键(key) * 第二个参数:值(value) */String data = "Hello Second";Intent intent = new Intent(FirstActivity.this, SecondActivity.this);intent.putExtra("extra_data", data);startActivity(intent);

// 取值Intent intent = getIntent();String data = intent.getStringExtra("extra_data");


反向传值:

第一个页面:

/** * 接收第二个页面传过来的值 * startActivityForResult() * 第一个参数:Intent * 第二个参数:请求码,用于在之后的回调中判断数据的来源 */Intent intent1 = new Intent(FirstActivity.this, SecondActivity.class);startActivityForResult(intent1, 1);

/** * @param requestCode 启动活动时传入的请求码 * @param resultCode 在返回数据时传入的处理结果 * @param data  携带返回的Intent */@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {    switch (requestCode){        case 1:            if (resultCode == RESULT_OK){                String returnData = data.getStringExtra("data_return");                Log.d("FirstActivity", returnData);            }            break;        default:            break;    }}

第二个页面:

自定义的返回

Intent intent = new Intent();intent.putExtra("data_return", "Hellow FirstActivity");/** * 专门用于向上一个活动返回数据的 * 第一个参数:用于向上一个活动返回处理结果,一般只用RESULT_OK和RESULT_CANCELED * 第二个参数:把带有数据的Intent传递回去,调用finish()销毁页面 */setResult(RESULT_OK, intent);finish();

系统的返回:








原创粉丝点击