重温3 Activity Intent 向下传递数据 向上传递数据

1、使用Intent向下传递数据

Intent intent = new Intent(MainActivity.this,SecongActivity.class);
intent.putExtra("data_from_MainActivity","I am MainActivity");
startActivity(intent);
从SecondActivity取数据

Intent intent = getIntent();
String data = intent.getStringExtra("data_from_MainActivity");
根据传递的数据的类型选择getIntExtra()/getBooleanExtra...

2、向上传递数据

MainActivity.java

Intent intent1 = new Intent("sunny.example.comeonintent.ACTION");
startActivityForResult(intent1,1);
期望返回数据

startActivityForResult()

void android.support.v4.app.FragmentActivity.startActivityForResult(Intent intent, int requestCode)

SubActivity.java

Intent intent = new Intent();
intent.putExtra("data_from_sub", "I am Sub");
setResult(RESULT_OK,intent);//RESULT_OK -1;RESULT_CANCELED 0;
在MainActivity中接收数据

<span style="white-space:pre">	</span>@Override
	protected void onActivityResult(int RequestCode,int ResultCode,Intent data){
		TextView tv1 = (TextView)findViewById(R.id.tv1);
		TextView tv2 = (TextView)findViewById(R.id.tv2);
		switch(RequestCode){
		case 1:
			if(ResultCode == RESULT_OK){
				String returnData1 = data.getStringExtra("data_from_sub");
				tv1.setText(returnData1);
			}else{}
		case 2:
			if(ResultCode == RESULT_OK){
				String returnData2 = data.getStringExtra("data_from_third");
				tv2.setText(returnData2);
			}else{
				
				}
		default:
		}
		
	}
完整代码在:https://github.com/HiSunny/ComeOnIntent.git





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值