現在、使用しているスピナーのテキストの代わりに画像にアクセスして使用しようとしています。ドローアブルの代わりにテキストを具体的に使用する場合、以下のコードが機能します。
以前にこの質問を参照しました: R.drawable ID を XML 配列に保存する
問題を解決したいと思っていましたが、どこが間違っているのか正確に把握できませんでした。私は継続的に得ているようです:
Error: No resource found that matches the given name (at '^index_1' with value '@drawable/ic_launcher.png')
など、画像ごとに。各ドローアブルが存在し、適切な場所にあります。コードは明らかに私の理解を超えています。
<string-array name="rating_array">
<item>N/A</item>
<item>@drawable/ic_launcher.png</item>
<item>@drawable/smile.png</item>
<item>@drawable/stale.png</item>
<item>@drawable/sad.png</item>
<item>@drawable/angry.png</item>
</string-array>
[編集]
.png 拡張子を削除しました。ただし、まだ同じエラーが発生します。追加の提案はありますか?
また取得:
私はこれらのエラーを取り除きました、私は今得ています:
\res\layout\activity_main.xml:12: エラー: エラー: 指定された名前に一致するリソースが見つかりません ('contentDescription' で値 '@string/rate_main')。\res\layout\activity_main.xml:28: エラー: エラー: 指定された名前に一致するリソースが見つかりません (値が '@array/category_array' の 'entries' にあります)。\res\layout\activity_main.xml:36: エラー: エラー: 指定された名前に一致するリソースが見つかりません (値が '@array/rating_array' の 'entries' にあります)。res\layout\activity_main.xml:46: エラー: エラー: 指定された名前に一致するリソースが見つかりません (値が '@array/descriptor_array' の 'entries' にあります)。res\menu\main.xml:3: エラー: エラー: 指定された名前 ('title' で値 '@string/action_settings') に一致するリソースが見つかりませんでした。
エラーとして、ただし、これらのリスト ファイルを削除しても問題はありません。また、何らかの理由で他の配列に影響を与えていると言っていますが、「rating_array」だけが標準のテキスト リストではありません。
これに関するコード全体:
文字列.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="rating_array">
<item>N/A</item>
</string-array>
<string-array name="descriptor_array">
<item>N/A</item>
<item>Price</item>
<item>Service</item>
</string-array>
<string-array name="category_array">
<item>N/A</item>
<item>Restaurants</item>
<item>Hotels</item>
<item>Theater</item>
<item>Shopping</item>
</string-array>
<string name="app_name">W!NK</string>
<string name="action_settings">Settings</string>
<string name="rate_main">Rate</string>
</resources>
MainActivity.Java
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.widget.Spinner;
public class MainActivity extends Activity {
private Spinner spinbutton1, spinbutton2, spinbutton3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void addListenerOnSpinnerItemSelection(){
spinbutton1 = (Spinner) findViewById(R.id.spinbutton1);
spinbutton1.setOnItemSelectedListener(new CustomOnItemSelectedListener());
spinbutton2 = (Spinner) findViewById(R.id.spinbutton2);
spinbutton2.setOnItemSelectedListener(new CustomOnItemSelectedListener());
spinbutton3 = (Spinner) findViewById(R.id.spinbutton3);
spinbutton3.setOnItemSelectedListener(new CustomOnItemSelectedListener());
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}