已更新
我一直在寻找解决方案,但还没有找到..
我试过了
// Check for language
String tempLang = Locale.getDefault().getLanguage();
if (tempLang == "ar") {
Locale AR_LOCALE_EAST_NUMBERS = new Locale.Builder().setLanguageTag("ar-u-nu-arab").build();
Locale.setDefault(AR_LOCALE_EAST_NUMBERS);
firstName.setKeyListener(DigitsKeyListener.getInstance(getActivity().getString(R.string.input_charatars_only_valid)));
} else {
firstName.setKeyListener(DigitsKeyListener.getInstance(getActivity().getString(R.string.input_charatars_only_valid)));
}
首先它给出了 API 错误..它说要使用
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
我想将它用于 15 API,因为我的 minSdk 是 15
是否正确或是否需要任何更改
已更新:
请告诉我如何将英文数字转换为
“abcdefghijklmnopqrstuvwxyz123456789”和一个空间也“”
如何将字符串转换为带有 abc,123 和空格的阿拉伯语?
PS:我是新来的,请忽略是否有任何错误..
谢谢
您可以使用 replaceAll
来完成。
首先,创建一个方法:
public String convertToArabic(int value)
{
String newValue = (((((((((((value+"")
.replaceAll("1", "١")).replaceAll("2", "٢"))
.replaceAll("3", "٣")).replaceAll("4", "٤"))
.replaceAll("5", "٥")).replaceAll("6", "٦"))
.replaceAll("7", "٧")).replaceAll("8", "٨"))
.replaceAll("9", "٩")).replaceAll("0", "٠"));
return newValue;
}
和用法:
String myArabicNumber= convertToArabic(123);
Log.d("output",myArabicNumber);
输出:
١٢٣
更新:
你可以通过连接它们来做到这一点:
String space = "\u00A0"; //space
String myArabicCharacter = getResources().getString(R.string.help);
String myArabicNumber= convertToArabic(123);
String fullHomework = myArabicCharacter+space+myArabicNumber;
Log.d("output",fullHomework);
输出:
راهنما ١٢٣
更新2
YourProject/
res/
values/
strings.xml
values-ar/
strings.xml
arabic string resource:
<string name="help">راهنما</string>
english string resource:
<string name="help">help</string>