Android 将数据添加到数组中以在其他活动中列出
下面是我在android应用程序开发中使用的3个java类。我想在单击“添加”后添加AddActivity中的学生数据(姓名和电话号码)以存储在MainActivity页面中。我对此进行了研究,并尝试使用数组,但对于代码如何将AddActivity中键入的数据发送到MainActivity页面,我感到非常困惑。有人能给我一个如何解决这个问题的指导吗?如果你能告诉我另一种方法,而不是我正在尝试的方法,我将非常感激。我希望在每次单击AddActivity页面中的“添加”后,数据都以ListView格式存储在MainActivity中。希望有人能指导我这样做。多谢各位 MainActivity.java- [1] :[主活动页面图像]Android 将数据添加到数组中以在其他活动中列出,android,arrays,listview,android-studio,apk,Android,Arrays,Listview,Android Studio,Apk,下面是我在android应用程序开发中使用的3个java类。我想在单击“添加”后添加AddActivity中的学生数据(姓名和电话号码)以存储在MainActivity页面中。我对此进行了研究,并尝试使用数组,但对于代码如何将AddActivity中键入的数据发送到MainActivity页面,我感到非常困惑。有人能给我一个如何解决这个问题的指导吗?如果你能告诉我另一种方法,而不是我正在尝试的方法,我将非常感激。我希望在每次单击AddActivity页面中的“添加”后,数据都以ListView格
[2] :[添加活动页面的图像]您可以将它们存储为
公共静态变量
或创建AddActivity构造函数并获取函数
String student name; /*add value to this variable @onCreate or wherever in your AddActivity*/
public class AddActivity(/*here to pass data to addactivity*/){
//
}
public String getName(){
return this.name;
}
在另一项活动中
AddActivity ac = new AddActivity();
String someName = ac.getName();
您可以使用此逻辑传递数据
编辑
但是,如果您想要传递数据,只需检查intenr content onCreate()
我能找到的最好的解决方案是,将数组列表声明为静态的,如果类在同一个包中,您可以在任何地方访问它们。但如果您想存储这些值,请使用共享首选项。希望这能有所帮助。您好,您能给我看一下我需要的代码吗?在编辑我的答案时检查意图,希望它能帮助您;)您好,我正在尝试通过EditText添加数据,方法是单击AddActivity页面中的add按钮,并尝试显示我刚刚添加到MainActivity页面中的数据。android中的静态变量不是好主意。你为什么建议呢?也从不显式地
new
任何活动类是的,我实际上也不想使用静态变量。您好,您能告诉我怎么做吗?我是android开发新手。在AddActivity类中,声明Arraylist学生如下:公共静态Arraylist学生;现在,无论你想在哪里使用学生名单。你好,对不起,我仍然不知道怎么做。你有teamviewer吗?
public class Student {
String mName;
int mPhoneNumber;
public Student (String name, int number){
mName = name;
mPhoneNumber = number;
};
public String getmName() {
return mName;
}
public String getmName(String newName) {
return (this.mName = newName);
}
public int getmPhoneNumber() {
return this.mPhoneNumber;
}
public int getmPhoneNumber(int newPhoneNumber) {
return (this.mPhoneNumber = newPhoneNumber);
}
@Override
public String toString() {
return String.format("%s\t%f",this.mName, this.mPhoneNumber);
String student name; /*add value to this variable @onCreate or wherever in your AddActivity*/
public class AddActivity(/*here to pass data to addactivity*/){
//
}
public String getName(){
return this.name;
}
AddActivity ac = new AddActivity();
String someName = ac.getName();
Intent i = getIntent();
if(i.hasExtra("intentKey")){//check if it s not null
String name = i.getExtraString("intentKay");
}