有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java我的int值在SharedReferences中不被记住

我有一个列表,在第一次运行中有3个元素,我添加了这个列表3个元素,我想在SharedReferences中保持列表大小,这样我可以继续从我停止的位置删除元素,但在第一次运行中它不起作用,它将3个元素添加到列表中,但当我离开活动并返回时,列表大小似乎为0,为什么不在这里的SharedReferences是我尝试的。firstStart部分运行良好

SharedPreferences lifememory,settings;
SharedPreferences.Editor lifeeditor;
int lifelistsize;
boolean firstStart;
ArrayList<String> lifelist;

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_wheel);
    lifelist= new ArrayList<>();
    lifememory=getSharedPreferences("PREFS_NAME",0);
    settings=getSharedPreferences("PREFS_NAME2", 0);
    lifelistsize=lifememory.getInt("aa",3);
    firstStart = settings.getBoolean("firstStart", true);
    life(); 
    lifememoryfunction();
}
public void life(){
    if(firstStart){
        lifelist.add("X");
        lifelist.add("X");
        lifelist.add("X");
        SharedPreferences.Editor editor = settings.edit();
        editor.putBoolean("firstStart", false);
        editor.commit();
    }
}
public void lifememoryfunction(){
    lifeeditor=lifememory.edit();
    lifeeditor.putInt("aa",lifelist.size());
    lifeeditor.commit();
}

共 (0) 个答案