例如,我必须以下列方式传递2名学生的姓名和名单, abc 12 xyz 13
任何人都可以建议我应该如何实现这个?
答案 0 :(得分:2)
创建一个这样的字符串数组:
Strings sa[] = new String[n];
for(int i = 0; i < n i++)
{
//name and rollNo are the Arrays of student names and roll nos you have
sa[i] = add(name[i] + "," + rollNo[i]);
}
Intent intent = new Intent(CurrentActivity.this, NextActivity.class);
intent.putExtra("StudentDetails", sa);
startActivity(intent);
在NextActivity中:
String[] studentDetails = this.getIntent().getStringArrayExtra("StudentDetails");
并在您想要的项目上使用拆分使用名称和滚动编号:
String student1 = studentDetails[0].split(",")
String student1Name = student1[0];
int student1RollNo = Integer.parseInt(student1[0]);
最简单的方法是给出2个数组,1个用于名称,1个用于滚动数字并使用它们具有相同的索引
答案 1 :(得分:2)
创建一个类并使其实现Serializable import java.io.Serializable;
public class Record implements Serializable{
String name,rollNum;
public Record(String name, String rollNum) {
super();
this.name = name;
this.rollNum= rollNum;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getRollNum() {
return rollNum;
}
public void setRollNum(String rollNum) {
this.rollNum = rollNum;
}
}
现在,当您需要将数据传递给其他活动时,只需创建一个数组或arrayList(coll_of_records)并向其添加新记录。添加记录后,使用
Intent intent = new Intent(Current_Activity.this, New_Activity.class);
intent.putExtra("xyz", coll_of_records);
startActivity(intent);
答案 2 :(得分:0)
你这样做。当您创建开始新活动的意图时,您可以在开始之前向其发送“额外”
Intent myIntent;
int aInt = 10;
String aString = "a text";
myIntent = new Intent(view.getContext(),NewActivity.class);
myIntent.putExtra("My Integer Value", aInt);
myIntent.putExtra("My String Value", aString);
startActivity(myIntent);
然后在新活动中,您将获取以下值
int aInt;
String aString;
aInt = getIntent().getExtras().getInt("My Integer Value");
aString = getIntent().getExtras().getString("My String Value");
在这里,我使用长名称“我的整数值”来向您展示如何操作。这是传递值的id,所以请保持简单和逻辑,例如在你的case passnum和rollnum中。
答案 3 :(得分:0)
根据您的字段创建Class Student和Set name,number to Object ...
在(学生)对象的arraylist中添加所有对象,并通过意图发送对象的arraylist。
以这种方式将多个记录发送到另一个活动......
请参考以下链接,就像您的问题一样......