Android 如何正确编辑阿拉伯语字符串? 。الرجاء التأكد قبل الحذف. الملفات المحذوفة غير قابلة للإسترجاع.

Android 如何正确编辑阿拉伯语字符串? 。الرجاء التأكد قبل الحذف. الملفات المحذوفة غير قابلة للإسترجاع.,android,string,arabic,Android,String,Arabic,我想把“%1$s”放在一个阿拉伯字符串中,但正如您在这里看到的,word、notepad++、utraedit都未能获得正确的字符串。你们是如何编辑阿拉伯字符串的?这是编辑混合方向文本时令人沮丧的原因。重要的是文本的逻辑顺序,而不是任何编辑器如何显示它。当您最终在应用程序的运行时格式化字符串时,%1$s将被传递给格式化方法的任何字符串替换。唯一重要的是替换后字符串的呈现方式 最简单的方法是在不使用%1$s的情况下编写消息,然后定位插入插入符号,粘贴格式代码,然后忽略编辑器如何破坏bidi分析。(

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

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


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

您可以在“活动”中尝试

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

当我使用RTL文本时,我需要放置一个占位符(
%1$s
)或LTR单词,我只需要用MS Word编写它并复制到IDE中。
它在Eclipse和Android Studio中对我有效。

您只需检查显示该字符串(如
TextView
)的组件是否具有正确的重力。

在android Studio 2中,默认情况下不启用RTL支持, 手动配置它:

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

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


3.重新启动您的
android studio

祝您好运。如果文本混合了ltr和rtl,大多数编辑器只会修改文本。我发现gedit在大多数情况下都能正常工作。我甚至不能突出显示这个阿拉伯字符串。当!:)gedit 4赢了吗?让我试试。Android studio真的需要改进,在阿拉伯语文本中键入、突出显示、定位光标都是一团糟。预览甚至无法正确连接字母,即使记事本之类的基本功能可以。。。VS ide处理这一点要好得多,所以它肯定是可能的。@?android studio必须使用哪种编码版本?
String formatedString =  String.format("%1$s", getString(R.string.your_string));