大家都知道可以用sharepreferences来存储登录的账号和密码,sharepreferences中是以(key,value)来进行存储,如果key值一样的话,保存的账号永远是最后一个登录的账号。当然如果这就是你想要实现的,当下一次登录的时候显示上一次登录的账号和密码信息,直接putString()就可以实现。
那么多账号的保存用什么比较简单呢?sharepreferences中有一个putStringSet(String str, Set<String> set)的方法,可以直接拿来用。把账号信息存放到set<String>集合中,最后再把取得的set集合中的账号信息存储到list集合中,这样就可以像QQ登录账号下拉框一样保存多个用户信息了,当然需要把set转化为list。
下面就让我们看看代码是如何实现的:
保存账号:
SharedPreferences preferences = context.getSharedPreferences(Common.USERINFOS, Context.MODE_PRIVATE);
Set<String> set = new HashSet<String>();
set = preferences.getStringSet("username", null);
Editor editor = preferences.edit();
if(set !=