【发布时间】:2021-02-10 16:31:01
【问题描述】:
我需要在strings.xml 中添加<string name="name_hint"><Given Name></string>。为了做到这一点,转义序列是什么?要添加的字符串是<Given Name>
【问题讨论】:
标签: android
我需要在strings.xml 中添加<string name="name_hint"><Given Name></string>。为了做到这一点,转义序列是什么?要添加的字符串是<Given Name>
【问题讨论】:
标签: android
Android string.xml 文件只是一个普通的 XML 文件,因此您可以使用 XML 转义字符:
" "
' '
< <
> >
& &
你的例子会变成<string name="name_hint">&lt;Given Name&gt;</string>
更新:
此外,您可以使用每个字符的HTML entities,空格例如&#032;,不间断空格是&#160;。
请注意,我不完全确定这是否受到 XML 标准的正式支持,或者它“正常工作”......
【讨论】:
<string name="name_hint">&lt;Given Name&gt;&lt;Middle&gt;&lt;Surname&gt; </string>如果我需要中间前5个空格?
使用&lt; 表示小于号,&gt; 表示大于号。
所以这里你需要替换为:
<string name="name_hint"><Given Name></string>
【讨论】:
您可以将&lt; 用于< 和&gt; 用于>
因此,您应该在应用的 strings.xml 中添加以下字符串,例如:
<string name="name_hint"><Given Name></string>
对于您的另一个要求,您可以像这样定义它
<string name="name_hint"><Given Name> <Middle Name> <Last Name> </string>
或定义三个不同的字符串。
<string name="name_hint1"><Given Name></string>
<string name="name_hint2"><Middle Name></string>
<string name="name_hint3"><Last Name></string>
在您的 java 文件中动态添加它
tv.setText(getResources().getString(R.string.name_hint1) + " " +
getResources().getString(R.string.name_hint2)+" " +
getResources().getString(R.string.name_hint3));
【讨论】: