startActivityForResult

来源:互联网 发布:c 结构体数组 编辑:程序博客网 时间:2024/06/06 07:29

FirstActivity——>SecondActivity

在FirstActivity中:Intent intent = new Intent(this, SecondActivity.class);startActivityForResult(intent, 0); //请求码在SecondActivity中:Intent intent= new Intent();intent.putExtra("text", text);//要传递的数据setResult(0, intent);//结果码finish();回到FirstActivity://requestCode:请求码//resultCode:结果码  可以与上面的请求码和结果码做判断处理@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {// 在第二个界面关闭的时候调用,返回数据放在data里面if (data != null) {String text = data.getStringExtra("text");//text为返回携带的数据}super.onActivityResult(requestCode, resultCode, data);}


Intent Intent = new Intent(mContext,SecondActivity.class);startActivityForResult(Intent, FinalConstants.TEST_REQUEST);Intent it = new Intent();it.putExtra("test",str);setResult(Activity.RESULT_OK, it);finish();/** 回传处理 */@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {     super.onActivityResult(requestCode, resultCode, data);     // 判断是否请求成功     boolean isResultOk = (Activity.RESULT_OK == resultCode);     // 获取请求code     switch(requestCode){         case FinalConstants.TEST_REQUEST:                if(isResultOk){ //判断了请求码和结果码   也可只对其中之一做判断                    String str = data.getStringExtra("test");                    //TODO         }         break;    }}




原创粉丝点击