English 中文(简体)
如何使空间处于终点和(或)处于“强势”的开端?
原标题:How to keep the spaces at the end and/or at the beginning of a String?
  • 时间:2009-10-19 05:06:56
  •  标签:

我不得不从我的资源/价值档案中压缩这两条线:

<string name="Toast_Memory_GameWon_part1">you found ALL PAIRS ! on </string>
<string name="Toast_Memory_GameWon_part2"> flips !</string>

我这样做:

String message_all_pairs_found = getString(R.string.Toast_Memory_GameWon_part1)+total_flips+getString(R.string.Toast_Memory_GameWon_part2);

Toast.makeText(this, message_all_pairs_found, 1000).show();

But the spaces at the end of the first string and at the beginning of the second string have disappeared (when the Toast is shown) ...

我应该做些什么?

我猜测答案是:http://developer.android.com/app/java/util/regex/ Pack-descr.html#impnotes”rel=“noreferer”>。

还是使用&amp;用于“&”特性?

最佳回答

即便是你采用扼制格式,有时你在你扼杀的开始或结束的时候仍需要白天。 在这些情况下,既无<代码><>/代码>,也无<代码>xml:space属性。 您必须使用超文本实体&#160;用于白色空间。

Use &#160; for non-breakable whitespace.
Use &#032; for regular space.

问题回答

http://developer.android.com/guide/topics/resources/string-resource.html 建议引证工作:

<string name="my_str_spaces">" Before and after? "</string>

我只是使用UTF的“u0020”号空间法。

<string name="some_string">u0020The name of my string.u0020u0020</string>

工作出色。 (Androidhexachloros UTF代码)

This question may be old, but as of now the easiest way to do it is to add quotation marks. For example:

<string name="Toast_Memory_GameWon_part1">"you found ALL PAIRS ! on "</string>
<string name="Toast_Memory_GameWon_part2">" flips !"</string>

<代码>> 显示资源价值的。

例:

<string>"value with spaces"</string>

页: 1

使用<代码>0020 空间守则。

如果你真想这样做,那么我认为你必须告诉我们,白天空间是相关的:

<string name="Toast_Memory_GameWon_part1">you found ALL PAIRS ! on </string>
<string name="Toast_Memory_GameWon_part2"> flips !</string>

然而,I d use 。 类似于:

<string name="Toast_Memory_GameWon">you found ALL PAIRS ! on %d flips !</string>

之后

String message_all_pairs_found = String.format(getString(R.string.Toast_Memory_GameWon), total_flips);

这里的所有答复都对我不可行。 相反,在“条码”中添加一个空间。 XML i)

<string name="more_store">more store<b> </b> </string>

可以提出在方案上增加空间的理由。 由于这些案件经常用于分类,我决定停止疯狂行为,只是停止旧的<代码>+“+。 这些内容将在上公布。 欧洲语言,我将聚集一堂。

我对安乐斯没有具体的想法,但这种想法像通常的XML白色空间处理一样——在一个要素内领导和拖拉白色空间通常被认为微不足道和被删除。 Try xml:space:

<string name="Toast_Memory_GameWon_part1" xml:space="preserve">you found ALL PAIRS ! on </string>
<string name="Toast_Memory_GameWon_part2" xml:space="preserve"> flips !</string>

这实际上可能无法回答问题(如何在XML中保留白色空间),但可以更宽松地解决根本问题。

Instead of relying only on the XML resources, concatenate using format strings. So first remove the whitespaces

<string name="Toast_Memory_GameWon_part1">you found ALL PAIRS ! on</string>
<string name="Toast_Memory_GameWon_part2">flips !</string>

接着,以不同方式建设你:

String message_all_pairs_found = 
      String.format(Locale.getDefault(), 
                    "%s %d %s", 
                    getString(R.string.Toast_Memory_GameWon_part1),
                    total_flips,
                    getString(R.string.Toast_Memory_GameWon_part2);

Toast.makeText(this, message_all_pairs_found, 1000).show();

还有一个使用<代码>CDATA的解决办法。 例:

<string name="test"><![CDATA[Hello          world]]></string>

但总的来说,我认为<代码>u0020<>/code>够好。

如果你需要这一空间,以便日后与其他指示相加,那么你可以采取扼制格式的做法,在你的严格定义中增加论点:

<string name="error_">Error: %s</string>

接着,就座标格式而言(例如,如果您有服务器返还的错误,则使用getString(R.string.string_resource_example)):

String message = context.getString(R.string.error_, "Server error message here")

其结果如下:

Error: Server error message here




相关问题