if(savedIstanceState == null) {
pref = new SharedPref(this);
String prefe = pref.getPreString("LastPage");
if(prefe == "0") {
fragment = new Fragment0();
} else if(prefe == "1") {
fragment = new Fragment1();
} else if(prefe == "2") {
fragment = new Fragment2();
} else {
fragment = new Fragment3();
}
getFragmentManager().beginTransaction().add(R.id.container, fragment).commit();
}
但是如果在首选项中有例如0,那么总是返回Fragment3。为什么?
答案 0 :(得分:1)
首先,不要使用==
比较字符串,而是使用equals
。其次,我假设您正确保存了您的偏好,因为您没有显示存储值的方式。
希望它有所帮助。