java - 将 ArrayList 从 SecondActivity 传递到 MainActivity Android

标签 java android arrays android-intent android-activity

我的问题很简单,我正在尝试将数组列表从我的第二个 Activity 传递到我的 mainActivity。

但是,当用户从 secondaryActivity 按下返回时调用我的主 Activity 中的 onRestart() 时,数组列表似乎为空。

主要 Activity

@Override public void onRestart() {
        super.onRestart();
        DefaultLocations = (ArrayList<String>) getIntent().getSerializableExtra("updated");

///default locations is null

    }

第二项 Activity

@Override public void onPause() {

        super.onPause();
        Intent intent = new Intent(ManageLocations.this, MainActivity.class); 
        intent.putExtra("updated",locationsavailable)///size is 2 currently;
        this.setIntent(intent);
}

我环顾四周,因为我知道有很多示例,但没有一个可以帮助我将数组列表传递回我的 mainActivity。

感谢所有帮助!

最佳答案

在第二个 Activity 中:

ArrayList < String > locationsavailable = new ArrayList < String > ();
locationsavailable.add("location1"); 
locationsavailable.add("location2");

Intent sentIntent = new Intent(SecondActivity.this, FirstActivity.class);
sentIntent.putExtra("string-array", locationsavailable);
startActivity(sentIntent);

在第一个 Activity 中:

Intent intent = getIntent();
String [] DefaultLocations = intent.getStringArrayExtra("string-array");

已编辑:

就您而言,我建议使用 startActivityForResult 启动第二个 Activity 并在第一个 Activity 中覆盖 onActivityResult

关于java - 将 ArrayList 从 SecondActivity 传递到 MainActivity Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53356225/

相关文章:

java - 多线程锁定 Java Swing GUI

java - 计算两点之间的距离

Java:无法将字符串转换为数组

android - 当 Api 级别为 24 时,文本颜色在 xml 中不起作用

javascript - Ng-show 交换 DOM 不透明度动画

java - 从 Android 的角度看 J2ME 中的 CLDC 和 CDC

java - 从 CLI 运行 Java 工作正常,但从 SH 执行相同的不会让 Java 找到类

java - 在加载之前将属性传递给 log4j

c++ - 如何使用带有右值引用参数的初始化程序//为什么不能用另一个 C 样式数组变量初始化 C 样式数组

javascript - 表单文本字段变量在 Javascript 中显示未定义