适用于某个国家/地区的Android本地化

时间:2018-01-18 01:04:21

标签: android localization locale android-resources

我创建文件夹值-ru(对于任何区域)。但是使用乌克兰语或白俄罗斯语我有错误。

    class model_to_be_tested {
        // an array that holds a collection of thing A
        public $array_of_thing_A;

        // already doing constructor injection for the data object
        public __construct($data_object) {
         // details here
        }

        public function add_new_thing_A($has_relationship) {
          $thing_A = new Thing_A();
          $thing_A->is_thing = true;
          $thing_A->has_relationship_with_thing_B = $has_relationship;

          if ($has_relationship) {
             $thing_B = new Thing_B();
             $thing_A->relationship_with = $thing_B;
          }

          $this->array_of_thing_A[] = $thing_A;
      }
    }

告诉我,为什么我收到错误。我是否必须为所有地区创造价值-ru-uk等?

1 个答案:

答案 0 :(得分:0)

您应该使用默认(源)语言定义所有字符串,而不管您要添加的是哪种翻译。

这些内容包括:values/strings.xml

如果缺少这个(或者该文件中缺少字符串),那么我预计这就是你收到错误的原因。

然后,您可以根据需要添加任意数量的语言文件:例如:

  • values-uk/strings.xml。 (乌克兰)
  • values-be/strings.xml。 (白俄罗斯)

或其特定区域:例如:

  • values-ru-rUA/strings.xml。 (俄罗斯在乌克兰)

免责声明:我不是Android开发人员,但我编写了生成字符串文件的本地化软件。