记startActivityForResult和onActivityResult的用法——Android页面跳转回调传值

一.简述

之前实习的时候开发的是功能型软件 有很多填写页面的需求
所以用的还是挺多的 但是太久不用了 又用的不是很熟悉了 今天使用时有一点困惑结果百度半天也没有很好地博客 所以弄清楚后就自己记录一篇 以防下次又要找半天
首先在android中从一个activity跳转到另一个activity有很多种方法,但是如果要是想实现去另一个页面只是为了一系列操作 但是操作后的结果还需要带回当前页面处理 那么startActivityForResult就是首选了。

二.代码演示

activity1 :

			//跳转代码
	        Intent intent= new Intent();
            intent.setClass(activity1.this, activity2.class);
            startActivityForResult(intent, requestCode1);

			//接收代码1
			@Override
	   	    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
	        super.onActivityResult(requestCode, resultCode, data);
	        if(resultCode == RESULT_OK){
	            switch (requestCode) {
	                case CODE_ALBUM_ADD_PIC_FROM_CLOUD:
	                    String selectResult = data.getStringExtra(EXTRA_KEY_SELECT_RESULT);
	                    selectResult.length();
	                    break;
	                default:
	                    break;
	            }
	        }
    }

activity2:  
			//回传代码2
			Intent intent = new Intent();
            intent.putExtra(key, "key");
            setResult(resultCode1, intent);

其实代码很简单 单纯就是总是忘了 太久不用 主要是区分requestCode和resultCode而网上百度的都说说半天感觉还是不对的 很心累 其实我的理解简单来说就是:
1.requestCode就是你startActivityForResult传过去的标识码用来区分到底是哪个activity回传来的值
2.resultCode就是你setResult设置的用来区分回传结果的 例如你一个页面会有很多种回传可能 这样就可以筛选了

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值