Android 如何将保存首选项从一个按钮加载到另一个按钮

Android 如何将保存首选项从一个按钮加载到另一个按钮,android,button,sharedpreferences,Android,Button,Sharedpreferences,我正在探索android,我正在进行一项任务,其中有两个编辑文本字段和两个按钮 第一个编辑文本是输入名称 第二版文本用于输入电话号码 第一个按钮用于保存输入的姓名和电话号码。 第二个按钮用于拨打编辑文本框中输入的电话号码 我使用以下代码保存了详细信息 saveBtn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { SharedPre

我正在探索android,我正在进行一项任务,其中有两个编辑文本字段和两个按钮

第一个编辑文本是输入名称 第二版文本用于输入电话号码

第一个按钮用于保存输入的姓名和电话号码。 第二个按钮用于拨打编辑文本框中输入的电话号码

我使用以下代码保存了详细信息

saveBtn.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
        SharedPreferences sharedPref = getSharedPreferences("phoneNumber",Context.MODE_PRIVATE);
                SharedPreferences.Editor editor = sharedPref.edit();
                editor.putString("phoneNumber",number1.getText().toString());
                editor.putString("savename", name.getText().toString());
                editor.apply();
                Toast.makeText(getApplicationContext(), "Saved Contact",Toast.LENGTH_LONG).show();
这是我的呼叫按钮,它使用保存的电话号码和单击呼叫时的呼叫

 callBtn.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            try {
                String uri = "tel:" + number.getText().toString();
                Intent callIntent = new Intent(Intent.ACTION_CALL, Uri.parse(uri));

                startActivity(callIntent);
            } catch (Exception e) {
                Toast.makeText(getApplicationContext(), "Your call has failed...",Toast.LENGTH_LONG).show();
                e.printStackTrace();
            }
        }
    });

如何在callBtn功能中使用储存的电话号码?您能帮我一下吗?

在“保存”按钮中,您想创建一个
SharedReferences.Editor
实例

SharedPreferences.Editor editor = getPreferences(MODE_PRIVATE).edit();
SharedPreferences prefs = getPreferences(MODE_PRIVATE);
然后,我们使用编辑器的方法将字符串(名称)和int(电话号码)放入共享首选项中

editor.putString ("name", editText1.getText().toString()).apply();//remember to call apply()!
editor.putInt ("phoneNumber", Integer.parseInt (editText2.getText().toString())).apply();
要接收共享首选项,请创建一个
SharedReference
实例

SharedPreferences.Editor editor = getPreferences(MODE_PRIVATE).edit();
SharedPreferences prefs = getPreferences(MODE_PRIVATE);
并使用
getString
getInt
获取相应的内容

prefs.getString ("name", "");
prefs.getInt ("phoneNumber", 0);

第二个参数是默认值。如果找不到带有键的首选项,它将返回默认值。因此,如果用户不保存姓名和电话号码,它将使用“”和0,但我认为您应该使用更好的默认值。

在“保存”按钮中,您希望创建一个
SharedReferences.Editor
实例

SharedPreferences.Editor editor = getPreferences(MODE_PRIVATE).edit();
SharedPreferences prefs = getPreferences(MODE_PRIVATE);
然后,我们使用编辑器的方法将字符串(名称)和int(电话号码)放入共享首选项中

editor.putString ("name", editText1.getText().toString()).apply();//remember to call apply()!
editor.putInt ("phoneNumber", Integer.parseInt (editText2.getText().toString())).apply();
要接收共享首选项,请创建一个
SharedReference
实例

SharedPreferences.Editor editor = getPreferences(MODE_PRIVATE).edit();
SharedPreferences prefs = getPreferences(MODE_PRIVATE);
并使用
getString
getInt
获取相应的内容

prefs.getString ("name", "");
prefs.getInt ("phoneNumber", 0);

第二个参数是默认值。如果找不到带有键的首选项,它将返回默认值。因此,如果用户不保存姓名和电话号码,它将使用“”和0,但我认为您应该使用更好的默认值。

谢谢您的回复。我已经用我写的代码编辑了我的问题。你能告诉我我做得对吗?是的,你就是这样做的@谢谢你的回复。我已经用我写的代码编辑了我的问题。你能告诉我我做得对吗?是的,你就是这样做的@G'one'