我使用以下代码来强制我的textview用英文数字显示其文本编号:

txtScale.setText("x" + String.format(Locale.ENGLISH, String.valueOf(scaleValue)));

但它不起作用,并继续显示具有所选区域设置的数字。如果将应用程序语言环境设置为阿拉伯语,则将其显示为阿拉伯数字,如果将其设置为英语,则将其显示为英语,但是我想强制在所有州都以英语显示数字。

例如,我想在阿拉伯语下面显示文本:
۱۲۳۴ //are one two three four

作为:
1234

如果有帮助,我可以使用以下代码手动更改应用程序的语言:
    Locale locale = new Locale(CurrentLanguage);
    Locale.setDefault(locale);
    Configuration config = new Configuration();
    config.locale = locale;
    context.getResources().updateConfiguration(config,
            context.getResources().getDisplayMetrics());

最佳答案

不太确定您需要什么,但是我想您需要这样做:

txtScale.setText(String.format(Locale.ENGLISH, "x%d", scaleValue));
String.valueOf(scaleValue)出现错误,您已在其中根据默认语言环境转换了数字

10-07 19:12
查看更多