使用Intents添加新活动,但我只使用一个实例?

时间:2011-12-12 16:21:41

标签: android

我有三个按钮向活动发送不同的变量:

Intent i = new Intent(getApplicationContext(),PhotosActivity.class);
i.putExtra("DISPLAY_ID", theVenue.displayId);
i.putExtra("ID", theVenue.id);

startActivityForResult(i, 0);

在每次访问活动时我在数据中加载的PhotosActivity中,这很有用。但是,为了提高效率,我实现了静态变量来存储数据,只加载一次。

private static List<SingleEvent> cachedObject;

问题是它只存储了点击的第一个按钮的数据。很明显,我没有使用PhotosActivity的三个实例,只有一个。

如何创建三个单独的PhotosActivity实例并将它们作为单独的活动添加?

1 个答案:

答案 0 :(得分:0)

最简单的方法是将缓存结构更改为HashMap<Integer, List<SingleEvent>>,其中第一个参数是theVenue.id。使用map,您可以存储所有缓存而无需创建大量活动。