2011-07-13 5 views
15

最新のAndroidプロジェクト(SDK9)で複数形を使用しようとしています。常にResourcesNotFoundExceptionで終わります。しかし、リソースがあります - 間違い:Pluralsの使用は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個の差分私はテキストと複数形のローカライズが必要です。

私のコードに何が悪いと思いますか?

事前に感謝します。

+0

このリンクで何を教えてよろしいですか?私は自分のコードとこのウェブサイトで見つかったコードとの間に違いは見当たりません。私はエラーが発生します... –

+0

私は今この同じ構成を使用しており、それは動作します。デフォルトの「値」フォルダにを配置してもよろしいですか? –

+0

上記のXMLコードは、res/valuesフォルダ内のstrings.xmlの一部です。 Androidのドキュメントでは、これは普通のことだが、必須ではないことを明示している: "複数のコレクションは、name属性(XMLファイルの名前ではない)で提供される値を使って参照される単純なリソースです。 1つのXMLファイル内の複数のリソースを1つの要素の下に他の単純なリソースと組み合わせることができます。私のコードで何が間違っているのか分かりません... –

答えて

1

Androidは複数の項目をすべて一貫して要求するように各翻訳を検討する必要があるように複数形を実装しています。たとえば、 'es'に 'zero'の複数形を宣言していて、 'fr'ファイルがある場合は、 'fr'ファイルにも '0'の複数形を定義する必要があります。

+2

同じエラーが発生する別の例:forgetting 「その他」の数量 – HannahMitt

関連する問題