1.显式intent
Intent intent = new Intent(this,second.class);
intent.putExtra("data");
startActivity(intent);
Intent intent = getIntent();
String data = intent.getStringExtra("data");
推荐写法:
second:
public static void actionStart(Context context, String data1, String data2) {
Intent intent = new Intent(context,second.class);
intent.putExtra("param1", data1);
intent.putExtra("param2", data2);
context.startActivity(intent);
}
first:
second.actionStart(this,"data1","data2");
2.startAcivityForResult
First:
Intent intent = new Intent(this,second.class);
startAcivityForResult(intent, 1);
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
switch (requestCode) {
case 1:
if (resultCode == RESULT_OK) {
String returnedData = data.getStringExtra("data_return");
Log.d("FirstActivity", returnedData);
}
break;
default:
}
}
second:
Intent intent = new Intent();
intent.putExtra("data_return","hello first");
setResult(RESULT_OK,intent);
finish();
@Override
public void onBackPressed() {//back键退出特殊情况
Intent intent = new Intent();
intent.putExtra("data_return", "hello first");
setResult(RESULT_OK, intent);
finish();
}