我在listview中有一个城市列表。单击列表项我希望将此值存储在sharedpreferences中并进入新活动。在此活动中,要将此值隐藏在数组中。我想在每个设备中制作一个世界时钟。
答案 0 :(得分:0)
使用SharedPreferences
的好处是它们可以在应用程序的上下文中全局访问 - 您不需要"传递"他们身边。此外,您可以使用putStringSet
SharedPreferences
方法很好地处理此问题。在onClick
方法中,只需按以下方式保存您的城市:
Set<String> cityList = new HashSet<String>();
cities.add("City1");
cities.add("City2");
// Repeat for all cities in your list...
SharedPreferences sharedPreferences = getSharedPreferences("yourPreferences", Activity.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences .edit();
editor.putStringSet("cityList", cityList);
editor.commit();
然后,当您希望检索新Activity
中的城市时,只需使用以下代码:
SharedPreferences sharedPreferences = getSharedPreferences("yourPreferences", Activity.MODE_PRIVATE);
Set<String> cityList = sharedPreferences.getInt("cityList", new Set<String>());