Использование множественного числа заканчивается в ResourcesNotFoundException - PullRequest
18 голосов
/ 13 июля 2011

Я пытаюсь использовать множественное число в моем последнем проекте Android (SDK9). Это всегда заканчивается исключением ResourcesNotFoundException. Но Ресурс есть - определенно:

Вот эта часть моего strings.xml:

<plurals name="count_files">
  <item quantity="one">%d file</item>
  <item quantity="other">%d files</item>
  <item quantity="zero">%d files</item>
</plurals>

<plurals name="count_folders">
  <item quantity="one">%d folder</item>
  <item quantity="other">%d folders</item>
  <item quantity="zero">%d folders</item>
</plurals>

И вот та часть, которая его использует:

textView.setText(
    getResources().getQuantityString(R.plurals.count_folders, countfolders, countfolders) 
    + ", " 
    + getResources().getQuantityString(R.plurals.count_files, countfiles, countfiles));

Вот исключение:

android.content.res.Resources$NotFoundException: Plural resource ID #0x7f050001 quantity=0 item=other

Мне нужно поддерживать до 15 разных языков, поэтому мне нужна локализация текста и множественного числа.

Есть идеи, что случилось с моим кодом?

Большое спасибо заранее.

1 Ответ

1 голос
/ 21 декабря 2013

Android реализует множественное число таким образом, что вам необходимо учитывать каждый перевод, чтобы последовательно требовать каждого элемента множественного числа.Например, если вы объявили множественное число для «нуля» в «es», и у вас также есть файл «fr», вам также потребуется определить множественное число «нуля» в файле «fr».

...