三种不同方式启动activity
1,只启动Activity不做任何其他操作
Intent intent = new Intent(this, SecondActivity.class);
startActivity(intent);
2,启动Activity同时传递值
2.1 启动的Activity
Intent intent = new Intent(this, SecondActivity.class);
intent.putExtra("user", "12345");
startActivity(intent);
2.2 被启动的Activity
Intent intent= getIntent();
String user=intent.getStringExtra("user");
此时值“12345”被传递到SecondActivity中;
3, 启动Activity,同时让被启动的Activity往回传值
3,1 启动的Activity
“101”为requestcode
Intent intent = new Intent(this, SecondActivity.class);
startActivityForResult(intent, 101);
//获得被传回来的值
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data){
//data 是setResult(200, intent)方法中的intent;
super.onActivityResult(requestCode, resultCode, data);
if (requestCode==101&&resultCode==200) {
String re= data.getStringExtra("result");
Log.i("TAG", "result:"+re);
}
}
3,2 被启动的Activity
Intent intent= new Intent();
intent.putExtra("result", "1678900");
//200 是resultcode;
setResult(200, intent);