Android中Activity之间的跳转和参数传递

1.从AActivity跳转到BActivity,不需要传递参数

Intent intent = new Intent(AActivity.this,BActivity.class);
//intent.addFlags(Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT);//设置Activity的打开方式
startActivity(intent);

2.从AActivity跳转到BActivity,并向BActivity传递参数

    向BActivity传递参数

Intent intent = new Intent(AActivity.this,BActivity.class);
intent.putExtra("key1","value1");
intent.putExtra("key2","value2");
//...
startActivity(intent);

    在BActivity中获取AActivity传过来的参数

//获取前一个Activity传递的instance_id
Bundle extras = getIntent().getExtras(); 
String value1 = extras.getString("key1");
String value2 = extras.getString("key2");
 

3.从AActivity跳转到BActivity,退出BActivity时向AActivity返回参数

AActivity中:

Intent intent = new Intent(AActivity.this,BActivity.class);
startActivityForResult(intent,1);
    BActivity 中:
BActivity.this.setResult(1);//返回int型数值
BActivity.this.finish();

AActivity中:

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data){
    Log.i("BActivity返回值",String.valueOf(resultCode));
}
 

猜你喜欢

转载自leoaioria.iteye.com/blog/2207588