Java 如何使用SharedReferences保存模型?
我有一个类在里面添加一些变量。 我已经从中创建了一个对象。 然后我给它添加了一些Java 如何使用SharedReferences保存模型?,java,android,Java,Android,我有一个类在里面添加一些变量。 我已经从中创建了一个对象。 然后我给它添加了一些值。 现在的问题是,我不知道如何在里面添加它。 SharedReferences 我想编辑代码,这样我可以添加它没有问题。 //类别:主要活动 public class MainActivity extends AppCompatActivity { Times times; public static Context context; @Over
值。
现在的问题是,我不知道如何在里面添加它。
SharedReferences
我想编辑代码,这样我可以添加它没有问题。
//类别:主要活动
public class MainActivity extends AppCompatActivity {
Times times;
public static Context context;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
this.context = context;
times = new Times(5,30);
// setInt(times);
}
public final static String PREFS_NAME = "appname_prefs";
public static void setInt(String key, int value) {
SharedPreferences sharedPref = context.getSharedPreferences(PREFS_NAME ,0);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putInt(key, value);
editor.apply();
}
public static int getInt(String key) {
SharedPreferences prefs = context.getSharedPreferences(PREFS_NAME, context.MODE_PRIVATE);
return prefs.getInt(key , 0);
}
}
// class Times:
public class Times{
int Houre;
int Minute;
public Times(int houre, int minute){
Houre = houre;
Minute = minute;
}
public void setHoure(int houre){
Houre = houre;
}
public void setMinute(int minute){
Minute = minute;
}
public int getHoure(){
return Houre;
}
public int getMinute(){
return Minute;
}
}
只需添加editor.commit();删除editor.apply();
您可以在此处阅读有关共享首选项的说明
Ohad是正确的。SharedReference仅存储Int和String等基本类型。在这种情况下,您必须将每个值存储为其自己的SharedReference
如果你的数据比SharedPreferences能处理的更复杂,考虑把它存储在一个数据库中。这能回答你的问题吗?