我有这种方法:

private void deleteExam(String i) {

        SharedPreferences prefsContatore = getSharedPreferences("esameKey"+i, Context.MODE_PRIVATE);
        SharedPreferences.Editor editorContatore = prefsContatore.edit();
        editorContatore.putString("esameKey"+i, "0");
        editorContatore.commit();
}


走?我可以递归地调用“ esameKey” + i吗?

最佳答案

getSharedPreferences访问文件并创建(如果不存在)。每次传递不同的i都会创建一个新文件。创建一次:

SharedPreferences prefsContatore = getSharedPreferences("mySharedPrefFileName", Context.MODE_PRIVATE);
SharedPreferences.Editor editorContatore = prefsContatore.edit();


putString的第一个参数是键,第二个参数是要存储的值

editorContatore.putString("esameKey"+i, "0");


这样,您就为每个i放置0的值。真的就是您想要的吗?

09-25 20:52