2016-09-03 3 views
-2

私のアプリケーションをビルド/実行すると、 "LegKickブロック1"ではなくリストビューの位置に "2131165360"が表示されます。なぜこのコードを入力すると、これは起こりますか?R.string。 ArrayListで使用されますか?

arrayList.add(String.valueOf(R.string.legkick_block1)); 

私はこれを行うことによって、私の問題を解決することができますが、私はむしろではなく、文字列の値を取得したい、それをハードコード:

arrayList.add("LegKick Block 1"); 

されていますがアプローチの価値を置くために配列リストの文字列?

+0

多分:「うまくいかない」ため...あなたの問題についての有用な説明ではありません。そのような「うまくいかない」質問を書く方法を理解するには、ヘルプセンターにお立ち寄りください。 – GhostCat

+0

R.stringファイル内の文字列の配列を作ることもできます –

答えて

2

使用list.add(getString(R.string.legkick_block1));

R.string.any_string 

が資源に整数値を返し、あなたがするので、リスト

+1

追加することを検討してください...説明... – GhostCat

+0

素晴らしい、ありがとうNishant Pardamwar!ゴーストキャット、親切に説明できますか?それとも大きな秘密だろうか? –

+0

よろしくお願いします。 –

1

に追加することができ、整数リソースにマッピングされた文字列オブジェクトを返すgetResource().getString(R.string.any_string) それとも単にgetString(R.string.any_string)を使用する必要がありますR.stringは整数を返しますが、(単独で)String値として使用することはできません。代わりに、次の操作を行います。

getString(R.string.legkick_block1) 

は、それは(この場合)の文字列値を取得しlegkick_block1

注:あなたはそれを動作させるための活動を参照する必要があります。それはアクティビティ内または参照中で使用されなければならないことを意味します。

関連する問題