gpt4 book ai didi

java - 如何存储值并从共享首选项中检索它们

转载 作者:行者123 更新时间:2023-12-01 09:24:25 25 4
gpt4 key购买 nike

在 Activity 1(电子邮件首选项)中,我通过编辑文本获取电子邮件。我想在重新打开申请时再次使用此电子邮件

这是我的代码:

public  static final String MyPREFERENCES = "MyPref";
public static final String Email = "emailkey";
SharedPreferences sharedPreferences;


protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.emailpreferences);

edit1=(EditText)findViewById(R.id.editText);
buttonpref=(Button)findViewById(R.id.button);

sharedPreferences = getSharedPreferences(MyPREFERENCES, Context.MODE_PRIVATE);

buttonpref.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
String email = edit1.getText().toString();

SharedPreferences.Editor editor = sharedPreferences.edit();

editor.putString(Email, email);

但是完成以下操作后,不会检索到电子邮件:

public class MainActivity extends AppCompatActivity {

Text name;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

SharedPreferences sharedPreferences = PreferenceManager
.getDefaultSharedPreferences(getApplicationContext());
String name = sharedPreferences.getString(Email, "email");
Toast.makeText(this,name, Toast.LENGTH_LONG).show();
}
}

最佳答案

首先,您需要在编辑器上使用 commit 或 apply 命令将键分配给值。

SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString(Email, email);
editor.commit(); //or editor.apply();

PreferenceManagerSharedPreference 是不同的。请阅读它们。您可以通过这种方式检索值。

SharedPreferences sharedPreferences = getSharedPreferences(MyPREFERENCES, Context.MODE_PRIVATE);
String name = sharedPreferences.getString(Email, "email");

关于java - 如何存储值并从共享首选项中检索它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39949118/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com