В настоящее время я пытаюсь получить доступ и использовать изображение вместо текста в Spinner, который я использую. Приведенный ниже код работает, если бы я использовал текст специально вместо чертежей.Android Сохранение Drawable In Array
Я ранее ссылался на этот вопрос: Storing R.drawable IDs in XML array
Надеясь исправить мою проблему, но я не мог понять, где именно я буду неправильно. Кажется, я постоянно получаю:
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. Тем не менее, я по-прежнему получаю такую же ошибку. Любые дополнительные предложения?
Также получение:
Я избавилась от этих ошибок, я теперь получаю:
\ рес \ расположение \ activity_main.xml: 12: ошибка: Ошибка: Нет ресурс не найден, что соответствует данная name (at 'contentDescription' со значением '@ string/rate_main'). \ res \ layout \ activity_main.xml: 28: error: Ошибка: ресурс не найден, который соответствует указанному имени (в 'entries' со значением '@ array/category_array'). \ res \ layout \ activity_main.xml: 36: error: Ошибка: ресурс не найден, который соответствует указанному имени (в 'entries' со значением '@ array/rating_array'). res \ layout \ activity_main.xml: 46: error: Ошибка: ресурс не найден, который соответствует указанному имени (в 'entries' со значением '@ array/descriptor_array'). res \ menu \ main.xml: 3: ошибка: Ошибка: ресурс не найден, который соответствует указанному имени (в 'title' со значением '@ string/action_settings').
Как ошибки, однако, когда я удаляю эти файлы списка, у меня нет проблем. Кроме того, по какой-то причине он говорит, что это влияет на другие мои массивы, однако «rating_array» - это единственный, который не является вашим стандартным текстовым списком.
код в полном комплекте по поводу этого:
String.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;
}
}
Разместите код для доступа к выше –