在输出格式上应用本地化

时间:2013-12-04 09:05:03

标签: android localization

我正在为我的小应用做本地化但是翻译字符串是不够的。我的代码是:

result.setText(hsDist + " " + interval);

英文输出为: -

“少校三号”

西班牙语(及其他)输出应为:

“特塞拉市长”

所以代码的“西班牙语”版本应该是:

result.setText(interval + " " + hsDist);

有没有办法根据本地化选择每行代码?还有其他方法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

您可以实现一个小型本地化Manager类,它将根据当前本地创建一个正确的字符串 http://developer.android.com/reference/java/util/Locale.html 例如:

//单例实例

//班级成员字段

....
Locale mLocale = getResources().getConfiguration().locale;

String getProperOutPutForSampleString()
{
 switch (mLocale)
 {
  case Locale.ENGLISH:
   return hsDist + " " + interval;
  break:

  //etc etc etc
 }
}
...

之后你可以简单地使用它:

result.setText(ManagerLocalizedString.getInstance().getProperOutPutForSampleString();