数据的反向传递

mac2022-06-30  124

#### 步骤 1. 启动界面,等待结果         Intent intent = new Intent(this,SmsListActivity.class);         //startActivity(intent);//启动一个新的界面,但是不需要返回结果                  //1. 启动下一个界面,然后等待结果的返回         startActivityForResult(intent,0); 2. 在下一个界面设置返回的结果         Intent intent = new Intent();                 intent.putExtra("sms", objects[position]);                 //2.返回结果                 setResult(1, intent); 3. 关闭下一个界面         //3.关闭当前界面                 finish(); 4. 在当前界面重写onActivityResult获取结果         @Override             protected void onActivityResult(int requestCode, int resultCode, Intent data) {                 super.onActivityResult(requestCode, resultCode, data);                                  //4.获取到下一个界面返回的数据                 String sms = data.getStringExtra("sms");                 et_content.setText(sms);             }

 

###requestCode和 resultCode的用意 * requesetCode > 当一个界面有多个请求发出去,并且都等待结果的返回。这个时候,就必须要区分一下到底当前是什么请求已经拿到数据返回了,所以就应该使用requestCode判定。 * resultCode > 当下一个界面返回的数据有不同种类型,这个时候就可以使用resultCode去判定到底是什么类型的数据(一般都很少用。) 

转载于:https://www.cnblogs.com/MarsDabiaoge/p/5121998.html

最新回复(0)