Java Android Stringbuilder返回数值,而不是Alpa
对Java和Android来说确实很陌生,但正在努力学习。在创建对话框警报的过程中,我使用stringbuilder向用户发送消息。我从string.xml文件中提取了几行文本,如下所示Java Android Stringbuilder返回数值,而不是Alpa,java,android,string,Java,Android,String,对Java和Android来说确实很陌生,但正在努力学习。在创建对话框警报的过程中,我使用stringbuilder向用户发送消息。我从string.xml文件中提取了几行文本,如下所示 <string name="lbl_deactivated_error">YOU HAVE BEEN DEACTIVATED</string> <string name="lbl_notification_line2">Call Customer Service 1–800-
<string name="lbl_deactivated_error">YOU HAVE BEEN DEACTIVATED</string>
<string name="lbl_notification_line2">Call Customer Service 1–800-xxx-xxxx-/string>
<string name="lbl_notification_line3">Email support@xxxx.com</string>
<string name="lbl_notification_line6">Please Exit By Pressing Home.</string>
AlertDialog.Builder dialog = new AlertDialog.Builder(ErrorActivity.this);
dialog.setTitle(lbl_deactivated_error);
alertmessage.append(lbl_notification_line2);
alertmessage.append("\n");
alertmessage.append(lbl_notification_line3);
alertmessage.append("\n");
alertmessage.append(lbl_notification_line6);
dialog.setMessage(alertmessage.toString());
dialog.show();
执行时,警报会显示标题,但消息会显示一组数字,而不是strings.xml中显示的文本。它打印每行文本并返回,但我得到的结果是
您已被停用
21301099688
21301099688
21301099688
我犯了一个明显的错误吗?它可能与电话号码中的连字符有关吗?您需要获取字符串,而不是资源ID。
无论何时构建,它都会创建一个R文件,其中保存资源指针的资源ID(INT)。您想改用getString(R.string.lbl\u notification\u line3)。可能的重复项我可以读取stirng.xml,我已经导入了R.string,所以只需从xml中引用字符串名称。设置标题显示正确。如果我只做一行,只做一行dialog.setmessage,它就可以工作。这是因为它们可以使用资源id,如果你想实际获取字符串,你需要执行副本中所述的操作。我明白了,我在获取R之前忘记了getString。谢谢你指出这一点。没问题,很乐意提供帮助。