有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

数值翻转的java Android希伯来语RTL字符串

我想显示一个包含我的应用程序名称及其当前版本的字符串。 应用程序名称是希伯来语的,对于某些人来说,当我将希伯来语文本与数值组合时,数值会被翻转

versionTextView.setText("אפליקציה גרסה "+this.getResources().getString(R.string.app_version));

例如:应用程序版本为1.0,在emulator上显示为0.1


共 (2) 个答案

  1. # 1 楼答案

    我认为您需要使用dir=“RTL”标记为输出字符串设置CSS样式,这将修复希伯来语中数字和特殊字符的方向性

  2. # 2 楼答案

    听起来像是Android bidi算法中的一个bug。尝试在数字周围添加从左到右的标记:

    versionTextView.setText("אפליקציה גרסה "
        + "\u200e"
        + this.getResources().getString(R.string.app_version)
        + "\u200e"
    );
    

    (如果这样做有效,您可以消除第二个。)