今天讲解的是使用Intent实现Activity组件之间的通信。
一、 使用Intent显式启动Activity,Activity1àActivity2
1、 不进行数据传递
Intent it=new Intent(getApplicationContext(),Activity2.class);
startActivity(it);
2、 Activity1传递数据给Activity2
Activity1中的添加数据代码:
Intent it=new Intent(getApplicationContext(),Activity2.class);
it.putExtra(name,value);//it.putExtra(“username”,username);
startActivity(it);
Activity2中的获取数据代码:
Intent it=getIntent();
Xxx name=it.getXxxExtra(name);//String username=it.getStringExtra(“username”);
…使用name的值
3、 Activity1向Activity2要数据
Activity1中的代码:
Intent it=new Intent(getApplicationContext(),Activity2.class);
startActivityForResult(it,requestCode);
重写方法:
protected void onActivityResult(intrequestCode,intresultCode,Intent data){
if(requestCode=resultCode){
Xxx name=data.getXxxExtra(name);
//String username=it.getStringExtra(“username”);
…使用name的值
}
}
Activity2中的代码:
Intent it=getIntent();
it.putExtra(name,value);//it.putExtra(“username”,username);
setResult(resultCode,it);
finish();