我有三个按钮向活动发送不同的变量:
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实例并将它们作为单独的活动添加?
答案 0 :(得分:0)
最简单的方法是将缓存结构更改为HashMap<Integer, List<SingleEvent>>
,其中第一个参数是theVenue.id
。使用map,您可以存储所有缓存而无需创建大量活动。