您的位置:首页 > 移动开发 > Android开发

Android传递数据

2015-10-29 09:14 399 查看
1、Intent传递数据,假设有两个activity,AActivity和BActivity

AActivity中发送数据部分代码:

Button btn=(Button)findViewById(R.id.button1);
btn.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
EditText name = (EditText)findViewById(R.id.edittext1);
EditText sno = (EditText)findViewById(R.id.edittext2);
Intent intent = new Intent(AActivity.this,BActivity.class);
intent.putExtra("name", name.getText().toString());
intent.putExtra("sno", sno.getText().toString());
AActivity.this.startActivity(intent);
}
});
BActivity中接收数据部分代码

Intent intent = getIntent();
String name = intent.getStringExtra("name");
String sno = intent.getStringExtra("sno");
2、Bundle传递数据

Bundle可以传递对象,前提是这个对象需要序列化。

person类代码:

public class Person implements Serializable{
private String name = null;
private String sno = null;
public String getName() {
return name;
}
public String getSno() {
return sno;
}
public Person(String name,String sno){
this.name = name;
this.sno = sno;
}

}


AActivity发送数据部分代码如下:

btn.setOnClickListener(new OnClickListener(){
public void onCLick(view v){
EditText name = (EditText)findViewById(R.id.edittext1);
EditText sno = (EditText)findViewById(R.id.edittext2);
Intent intent = new Intent(AActivity.this,BActivity.class);
Bundle mExtra = new Bundle();
String name1 = name.getText().toString();
String sno1 = sno.getText().toString();
Person person = new Person(name1, sno1);
mExtra.putSerializable("person", person);
intent.putExtras(mExtra);
AActivity.this.startActivity(intent);
}
});


BActivity中接收数据代码如下:

Intent intent = getIntent();
Person person = (Person) intent.getSerializableExtra("person");
String name = person.getName();
String sno = person.getSno();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: