我开始使用android,我想将String,Object,double,ArrayList从一个 Activity 发送到另一个 Activity 。我已经完成了整数,但是当我想发送其他数据(例如对象和 ArrayList)时我遇到了问题。
发件人 Activity
Intent myIntent = new Intent(SenderActivity.this, ReceiverActivity.class);
myIntent.putExtra("intVariableName", intValue);
startActivity(myIntent);
接收者 Activity
Intent mIntent = getIntent();
int intValue = mIntent.getIntExtra("intVariableName", 0);
最佳答案
传递 double 据:
发件人 Activity
Intent myIntent = new Intent(SenderActivity.this, ReceiverActivity.class);
myIntent.putExtra("doubleVariableName", doubleValue);
startActivity(myIntent);
接收者 Activity
Intent mIntent = getIntent();
double doubleValue = mIntent.getDoubleExtra("doubleVariableName", 0.00); // set 0.00 as the default value if no value for doubleVariableName found
传递字符串数据:
发件人 Activity
Intent myIntent = new Intent(SenderActivity.this, ReceiverActivity.class);
myIntent.putExtra("stringVariableName", stringValue);
startActivity(myIntent);
接收者 Activity
Intent mIntent = getIntent();
String stringValue = mIntent.getExtras().getString("stringVariableName");
或
Intent mIntent = getIntent();
String stringValue = mIntent.getStringExtra("stringVariableName");
传递ArrayList数据:
发件人 Activity
Intent myIntent = new Intent(SenderActivity.this, ReceiverActivity.class);
myIntent.putStringArrayListExtra("arrayListVariableName", arrayList);
startActivity(myIntent);
接收者 Activity
Intent mIntent = getIntent();
arrayList = mIntent.getStringArrayListExtra("arrayListVariableName");
传递对象数据:
发件人 Activity
Intent myIntent = new Intent(SenderActivity.this, ReceiverActivity.class);
myIntent.putExtra("ObjectVariableName", yourObject);
startActivity(myIntent);
接收者 Activity
Intent mIntent = getIntent();
yourObj = mIntent.getSerializableExtra("ObjectVariableName");
注意:请记住您的自定义类必须实现可序列化接口(interface)。
传递HashMap数据:
发件人 Activity
HashMap<String, String> hashMap;
Intent mIntent = new Intent(SenderActivity.this, ReceiverActivity.class);
mIntent.putExtra("hashMap", hashMap);
startActivity(mIntent);
接收者 Activity
Intent mIntent = getIntent();
HashMap<String, String> hashMap = (HashMap<String, String>)
mIntent.getSerializableExtra("hashMap");
传递位图数据:
发件人 Activity
Intent myIntent = new Intent(SenderActivity.this, ReceiverActivity.class);
myIntent.putExtra("image",bitmap);
startActivity(mIntent);
接收者 Activity
Intent mIntent = getIntent();
Bitmap bitmap = mIntent.getParcelableExtra("image");
关于java - 我想将整数,字符串,对象, double ,位图,HashMap从一个 Activity 发送到android中的另一个 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45327721/