要使用SharedPreferences保存和加载ArrayList,可以按照以下步骤进行操作:
implementation 'androidx.preference:preference:1.1.1'
import android.content.Context;
import android.content.SharedPreferences;
import android.preference.PreferenceManager;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
import java.util.ArrayList;
public class SharedPreferencesHelper {
private static final String KEY_ARRAYLIST = "arraylist_key";
public static void saveArrayList(Context context, ArrayList arrayList) {
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(context);
SharedPreferences.Editor editor = sharedPreferences.edit();
Gson gson = new Gson();
String json = gson.toJson(arrayList);
editor.putString(KEY_ARRAYLIST, json);
editor.apply();
}
public static ArrayList loadArrayList(Context context) {
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(context);
Gson gson = new Gson();
String json = sharedPreferences.getString(KEY_ARRAYLIST, null);
Type type = new TypeToken>() {}.getType();
return gson.fromJson(json, type);
}
}
saveArrayList
方法,传入ArrayList参数:ArrayList arrayList = new ArrayList<>();
arrayList.add("Item 1");
arrayList.add("Item 2");
SharedPreferencesHelper.saveArrayList(context, arrayList);
loadArrayList
方法:ArrayList loadedArrayList = SharedPreferencesHelper.loadArrayList(context);
这样,你就可以使用SharedPreferences保存和加载ArrayList了。请注意,这里使用了Gson库来将ArrayList转换为JSON字符串进行保存,以及将JSON字符串转换回ArrayList进行加载。