Получение отрисовки по целому числу в хэш-карте

#android #hashmap #int #drawable

#Android #хэш-карта #int #Отрисовываемый

Вопрос:

Я пытаюсь отображать разные отрисовки для каждого дня, но я получаю исключение NullPointerException. занимаюсь этим уже несколько часов.

 private Map<String, Integer> dayMap;
...
dayMap = new HashMap<String, Integer>();
dayMap.put("day1", R.drawable.day1);
dayMap.put("day2", R.drawable.day2);
dayMap.put("day3", R.drawable.day3);
dayMap.put("day4", R.drawable.day4);
dayMap.put("day5", R.drawable.day5);
...
int mDay = 2; //set as 2 for testing
...
ivDay.setImageDrawable(getResources().getDrawable(dayMap.get("day"   String.valueOf(mDay)))); //NullPointerException!!!
  

-РЕДАКТИРОВАТЬ-

вау, я чувствую себя действительно глупо прямо сейчас, но публикация моего вопроса помогла мне ответить на него … потому что должен был рассказать, каким должен был быть ivday …. извините за ваше время : (

 ivDay = (ImageView)findViewById(R.id.imageView1);
  

Комментарии:

1. у меня сейчас все работает, извините.

Ответ №1:

Рад, что вы это поняли 🙂

Кстати, более быстрым и простым вариантом настройки фона было бы следующее:

 ivDay.setImageResource(dayMap.get("day"   mDay));
  

Сохраняет вызов getResources() и getDrawable(), поскольку у вас уже есть идентификатор.