我正在使用<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.0/jquery.min.js"></script>
<label year="2010" month="6" class="currentMonth"> June 2010</label>
存储我的数据,我想从SharedPreferences
访问存储在SharedPreferences
中的数据。我不知道如何正确使用Activity
,并且在尝试检索数据时收到null。请帮帮我,谢谢。
SharedPreferences
A
public class A extends AppCompatActivity {
EditText inputrate;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.change);
inputrate=(EditText)findViewById(R.id.inputrate);
SharedPreferences myrecord=getPreferences(Activity.MODE_PRIVATE);
String name_str=myrecord.getString("inputrate", "");
inputrate.setText(name_str);
test();
}
public void test(){
tmp=inputrate.getText().toString();
SharedPreferences myrecord=getPreferences(Activity.MODE_PRIVATE);
SharedPreferences.Editor edit=myrecord.edit();
edit.putString("inputrate", tmp);
edit.commit();
bundle.putString("INPUT",tmp);
}
}
MyMenu
答案 0 :(得分:0)
简单的解决方案在这里,您必须像下面这样在类中创建一个方法
private SharedPreferences pref;
private SharedPreferences.Editor editor;
private Context context_;
public PrefManager(Context context) {
this.context_ = context;
pref = context.getSharedPreferences("YOUR_Prefs_Key", Context.MODE_PRIVATE);
editor = pref.edit();
}
之后,您必须创建2种方法来保存和从SharedPerferences中获取数据,例如
public void saveItem(String item) {
pref.edit().putString("item_value", item).apply();
}
获取价值的第二种方法
public String getItem() {
return pref.getString("item_value, "");
}
两个方法中的键必须相等-“ item_value”。
现在要保存项目,您必须执行以下操作
PrefManager prefManager =new PrefManager(this);
prefManager.saveItem("item value to saved");
获取商品价值
String item = prefManager.getItem();
希望这会对您有所帮助。
答案 1 :(得分:0)
在您的onCreate()
a.java
添加的Activity
方法中
SharedPreferences sharedpreferences = getSharedPreferences(MyPREFERENCES, Context.MODE_PRIVATE);
并为共享首选项增加价值
Editor editor = sharedpreferences.edit();
editor.putString("key", "value");
editor.apply();
要从SharedPreferences
或您应用中使用的其他任何地方访问b.java
SharedPreferences sharedpreferences = getSharedPreferences(MyPREFERENCES, Context.MODE_PRIVATE);
然后使用
sharedpreferences.getString("key", "");
SharedPreferences不仅具有字符串,而且还有更多。检查官方文档。 我希望这会有所帮助。