在.Java活动中使用strings.xml值

时间:2013-12-18 12:39:59

标签: java android android-activity android-xml

因此,我将使我的应用程序使用Multilingual并为不同语言制作不同的String.xml。 我也在改变我的文本,例如

String message = "Calling " + name;
                Context context = getApplicationContext();
                int duration = Toast.LENGTH_SHORT;

                Toast toast = Toast.makeText(context, message, duration);
                toast.show();

String message = toastCalling + name;

(来自strings.xml)

<string name="toastCalling">Calling</string>

我遇到一个问题,它显然是一个INT,要么无法解析,要么将toastCalling(Calling)的值更改为“278172”(随机数)

有没有办法获得R.String.toastCalling(Calling)的ACTUAL值

我试过了:

String whatever = getResources().getString(R.string.toastCalling);

但我认为这不切实际。

提前致谢!

1 个答案:

答案 0 :(得分:5)

如果您在活动的范围内,您可以并且应该致电getString(R.string.toastCalling);来接收字符串。如果您不在活动的范围内,则需要getResources,如您的示例所示。这就是应该如何完成的。

顺便说一句,吐司的三条线可以缩短为一条:Toast.makeText(ctx, msg, Toast.LENGTH_LONG).show();