如何在Java中通过putString传递字符串值

时间:2014-09-24 08:42:47

标签: java android string

在我的活动中,我无法通过Java中的putString访问字符串。这是代码:

private void setButtonListeners()
{
    SharedPreferences sp = this.getSharedPreferences("favs", MODE_PRIVATE);
    Editor editor = sp.edit();
    editor.putString("HelloActivity", "com.example.hiapp.HelloActivity, com.example.hiapp.R.string.byebye");
    editor.commit();
}

当我开始活动时,一切正常但不显示字符串的名称,它只显示字符串的位置:com.example.hiapp.R.string.byebye

有关于此的任何想法?我不熟悉putString的用法。谢谢

编辑:截图

enter image description here

编辑2

正如您在问题中所看到的,问题在于:

 editor.putString("HelloActivity", "com.example.hiapp.HelloActivity, com.example.hiapp.R.string.byebye");

定义:

putString (String key, String value)

问题在于字符串值。它由以下组成:com.example.hiapp.HelloActivity,它是按钮使您可以访问的活动的名称。 并且:com.example.hiapp.R.string.byebye,这是我想要显示的字符串名称。这是唯一的错误,我不知道如何在不修改putString的情况下显示任何字符串。

正如您在图像中看到的那样,首先显示字符串,然后使用com.example.hiapp.HelloActivity显示一个按钮。但是该字符串没有显示其名称,它显示了它的位置

2 个答案:

答案 0 :(得分:0)

应该是:

private void setButtonListeners()
{
    SharedPreferences sp = this.getSharedPreferences("favs", MODE_PRIVATE);
    Editor editor = sp.edit();
    editor.putString("HelloActivity", getString(R.string.byebye));
    editor.commit();
}

现在应该可以了。

答案 1 :(得分:0)

更改此

editor.putString("HelloActivity", "com.example.hiapp.HelloActivity, com.example.hiapp.R.string.byebye");

editor.putString("HelloActivity", getResources().getString(R.string.byebye));

editor.putString("HelloActivity", getString(R.string.byebye));

要包含位置,您也可以尝试:

editor.putString("HelloActivity", getString(R.string.byebye) + " and Location: com.example.hiapp.R.string.byebye");

你正在放置位置。所以它显示的位置。

参考getResources()getString()

希望它有所帮助。