9
<string name="message">هذا المجلد يحتويى على %1$s ملفات. الرجاء التأكد قبل الحذف. الملفات المحذوفة غير قابلة للإسترجاع.</string>

我想把“%1$s”放在一个阿拉伯语字符串中,但是正如你在这里看到的,word、notepad++、utraedit 都没有得到正确的字符串。你们如何编辑阿拉伯字符串?

4

4 回答 4

5

在android Studio 2中,RTL支持默认没有开启,手动配置:

1.在您的计算机中,转到[android-studio2.0]/bins/idea.properties

2.editor.new.rendering=true在idea.properties末尾添加

3.重启你的android studio.

于 2015-12-26T13:31:33.043 回答
4

这是编辑混合方向文本时令人沮丧的根源。重要的是文本的逻辑顺序,而不是任何编辑器如何显示它。当您最终在应用程序的运行时格式化字符串时,%1$s将被您传递给格式化方法的任何字符串替换。唯一重要的是替换后字符串将如何呈现。

最简单的做法是在不带 的情况下编写消息%1$s,然后定位插入符号,粘贴格式代码,然后简单地忽略编辑器如何搞砸比迪分析。(搞砸是因为编辑器使用从左到右的基本级别。在某些编辑器中,您可以将基本流程设置为从右到左,但 xml 标记最终变得不可读。)

于 2013-10-08T08:08:22.670 回答
2

当我使用 RTL 文本并且需要放置占位符 ( %1$s) 或 LTR 单词时,我只需将其写入 MS Word 并复制到 IDE。
它适用于 Eclipse 和 Android Studio。
您需要检查的是显示该字符串的组件是否TextView具有正确的重力。

于 2013-10-08T08:36:12.457 回答
1

您可以在活动中尝试..

String formatedString =  String.format("%1$s", getString(R.string.your_string));
于 2013-10-08T08:09:13.227 回答