我在android中开始,我想将String,Object,double,ArrayList从一个活动发送到另一个活动。我已经用整数完成了,但是当我想发送对象和ArrayList之类的其他数据时,我遇到了问题。
发件人活动
Intent myIntent = new Intent(SenderActivity.this, ReceiverActivity.class);
myIntent.putExtra("intVariableName", intValue);
startActivity(myIntent);
接收者活动
Intent mIntent = getIntent();
int intValue = mIntent.getIntExtra("intVariableName", 0);
最佳答案
传递双重数据:
发件人活动
Intent myIntent = new Intent(SenderActivity.this, ReceiverActivity.class);
myIntent.putExtra("doubleVariableName", doubleValue);
startActivity(myIntent);
接收者活动
Intent mIntent = getIntent();
double doubleValue = mIntent.getDoubleExtra("doubleVariableName", 0.00); // set 0.00 as the default value if no value for doubleVariableName found
传递字符串数据:
发件人活动
Intent myIntent = new Intent(SenderActivity.this, ReceiverActivity.class);
myIntent.putExtra("stringVariableName", stringValue);
startActivity(myIntent);
接收者活动
Intent mIntent = getIntent();
String stringValue = mIntent.getExtras().getString("stringVariableName");
要么
Intent mIntent = getIntent();
String stringValue = mIntent.getStringExtra("stringVariableName");
传递ArrayList数据:
发件人活动
Intent myIntent = new Intent(SenderActivity.this, ReceiverActivity.class);
myIntent.putStringArrayListExtra("arrayListVariableName", arrayList);
startActivity(myIntent);
接收者活动
Intent mIntent = getIntent();
arrayList = mIntent.getStringArrayListExtra("arrayListVariableName");
传递对象数据:
发件人活动
Intent myIntent = new Intent(SenderActivity.this, ReceiverActivity.class);
myIntent.putExtra("ObjectVariableName", yourObject);
startActivity(myIntent);
接收者活动
Intent mIntent = getIntent();
yourObj = mIntent.getSerializableExtra("ObjectVariableName");
注意:请记住,自定义类必须实现Serializable接口。
传递HashMap数据:
发件人活动
HashMap<String, String> hashMap;
Intent mIntent = new Intent(SenderActivity.this, ReceiverActivity.class);
mIntent.putExtra("hashMap", hashMap);
startActivity(mIntent);
接收者活动
Intent mIntent = getIntent();
HashMap<String, String> hashMap = (HashMap<String, String>)
mIntent.getSerializableExtra("hashMap");
传递位图数据:
发件人活动
Intent myIntent = new Intent(SenderActivity.this, ReceiverActivity.class);
myIntent.putExtra("image",bitmap);
startActivity(mIntent);
接收者活动
Intent mIntent = getIntent();
Bitmap bitmap = mIntent.getParcelableExtra("image");