<string name="message">هذا المجلد يحتويى على %1$s ملفات. الرجاء التأكد قبل الحذف. الملفات المحذوفة غير قابلة للإسترجاع.</string>
我想把“%1$s”放在一个阿拉伯语字符串中,但是正如你在这里看到的,word、notepad++、utraedit 都没有得到正确的字符串。你们如何编辑阿拉伯字符串?
在android Studio 2中,RTL支持默认没有开启,手动配置:
1.在您的计算机中,转到[android-studio2.0]/bins/idea.properties
2.editor.new.rendering=true
在idea.properties末尾添加
3.重启你的android studio
.
这是编辑混合方向文本时令人沮丧的根源。重要的是文本的逻辑顺序,而不是任何编辑器如何显示它。当您最终在应用程序的运行时格式化字符串时,%1$s
将被您传递给格式化方法的任何字符串替换。唯一重要的是替换后字符串将如何呈现。
最简单的做法是在不带 的情况下编写消息%1$s
,然后定位插入符号,粘贴格式代码,然后简单地忽略编辑器如何搞砸比迪分析。(搞砸是因为编辑器使用从左到右的基本级别。在某些编辑器中,您可以将基本流程设置为从右到左,但 xml 标记最终变得不可读。)
当我使用 RTL 文本并且需要放置占位符 ( %1$s
) 或 LTR 单词时,我只需将其写入 MS Word 并复制到 IDE。
它适用于 Eclipse 和 Android Studio。
您需要检查的是显示该字符串的组件是否TextView
具有正确的重力。
您可以在活动中尝试..
String formatedString = String.format("%1$s", getString(R.string.your_string));