首先,我致电getFriends
。使用请求我获取数据。它工作正常,并且不为空
getFriends(getActivity());
private void getFriends(final Context context){
VKRequest request = VKApi.friends().get(VKParameters.from(VKApiConst.FIELDS,
"id,first_name,last_name,photo_100,"));
request.executeWithListener(new VKRequest.VKRequestListener() {
@Override
public void onComplete(VKResponse response) {
super.onComplete(response);
VKList<VKApiUser> Friends= (VKList<VKApiUser>)response.parsedModel;
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
SharedPreferences.Editor editor = prefs.edit();
Toast.makeText(context,Friends.get(0).last_name,Toast.LENGTH_LONG).show();//NOT NULL
for(int i = 0; i< Friends.size();++i) {
editor.putString("FriendFirstName" + String.valueOf(i), "asdsaddsa");
editor.putString("FriendLastName"+ String.valueOf(i), Friends.get(i).last_name);
editor.putString("FriendPhoto"+ String.valueOf(i), Friends.get(i).photo_100);
}
}
});
}
然后我致电LoadData
并尝试从中获取数据
LoadFriends(getActivity());
public void LoadFriends(Context context){
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
for(int i=0;i< 7; i++) {
if (prefs != null) {
Names.add(prefs.getString("FriendFirstName" + String.valueOf(i), null)
+ " " + prefs.getString("FriendLastName" + String.valueOf(i), null));
}
}
}
它给我的数据是预先的时间,我的意思是它并没有给我正确的数据; 我做错了什么?
答案 0 :(得分:5)
您需要在commit()
上致电apply()
或SharedPreferences.Editor
,以便保持更改。