android-intent数据回传

有时候跳转到另一个界面操作之后需要返回数据,便是数据回传
一、第一个activity,用startactivityforresult进行跳转。
第一个参数为intent,第二个参数为请求码

Intent intent = new Intent(MainActivity.this,MainActivity2.class);
             startActivityForResult(intent,1);

二、第二个activity操作完成后返回数据并关闭当前页面
实例化一个intent
发送数据
用setresult方法。两个参数,第一个为结果码,第二个为intent

Intent intent = new Intent();
                intent.putExtra("result","结果为:"+result);
                setResult(2,intent);
                finish();

三、在第一个activity重写onActivityResult方法
首先进行请求码的判断。确定是哪里的逻辑尽情的数据回传。
然后在判断不同的结果码,根据传回的不同结果码获取相对应的数据

@Override
     protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
    
    
         super.onActivityResult(requestCode, resultCode, data);
         //判断请求码
         if (requestCode==1){
    
    
         //结果码
             if (resultCode==2)
             {
    
    
             //取数据
                 result = data.getStringExtra("result");
             }else if (resultCode==3)
             {
    
    
                 result = data.getStringExtra("result");
             }
             //给控件赋值
             tv.setText(result);
         }
     }

猜你喜欢

转载自blog.csdn.net/Willow_Spring/article/details/113089921
今日推荐