Android - 将数据存储在对象数组中,稍后在ListView中显示

时间:2014-03-10 01:04:22

标签: android listview android-intent

我的标签栏应用程序中有两个活动。一个活动(activity1)是正常活动,另一个活动(activity2)是ListActivity。在activity1中,每当我点击对象数组中的按钮数据(date,value1,value2 ..)时,都会存储一个按钮。我读到这可以通过Intents实现。但是我每次点击按钮时都不想启动activity2。

如何将数组传递给activity2,以便我在ListView中的按钮上多次点击后可以显示它们?

编辑:

这是我的代码。但是我得到一个NullPointerException,所以它没有正确存储。 My Object hat Serializable已实现。

活性1:

     Intent datenIntent = new Intent(this, LoggerActivity.class);
     Bundle bundle = new Bundle();
     bundle.putSerializable("Daten",aDatensatz);
     datenIntent.putExtras(bundle); 

活性2:

Bundle bundleData = this.getIntent().getExtras();
Datensatz[] aDatensatz = (Datensatz[]) bundleData.getSerializable("Daten");

1 个答案:

答案 0 :(得分:0)

您可以通过以下方式一次性将一个数组从一个活动传递到另一个活动:

Bundle myBundle = new Bundle();
b.putStringArray(key, array);
Intent i = new Intent(context, Class);
i.putExtras(myBundle);

接收

您可以通过以下方式检索其他活动中的值:

Bundle b = this.getIntent().getExtras();
String[] array = b.getStringArray(key);

希望这有帮助。