2016-09-16 3 views
0

Показывает исключение Invalid Int "" при нажатии кнопки Показать изображение. Не могли бы вы рассказать мне, как разрешить это исключение?java.lang.NumberFormatException: Invalid int: отображает изображение с SD-карты

Ниже мой код

public void onBindViewHolder(ViewHolder viewHolder, int i) { 
    viewHolder.ivGreetings.setImageResource(Integer.valueOf(greetingsList[i])); 
} 
+2

проход целое в 'Int i', его принимая' «» 'строка, поэтому он не может преобразовать integer..thats у NumberFormatException –

ответ

0

setImageResource принимает только идентификаторы ресурсов от drawable dir, например.

Если вы хотите, чтобы загрузить изображение из файла, необходимо загрузить его в Bitmap, а затем использовать setImageBitmap(); на ImageView

+0

@ user6829548, обеспечивают нечто большее, чем detieled" * но не работает * ". Это действительно работает, но вы, возможно, злоупотребляете им. –

+0

Спасибо Влад Матвиенко – Joy

0

greetingsList[i] пустая строка. Вы пытаетесь преобразовать «» в Integer.

ЗначениеOf (String s) выбрасывает NumberFormatException, когда s не может быть проанализировано как целое число.

+0

Я уже стараюсь стоимости, но не работает – Joy

0

Пожалуйста, измените следуя

public void onBindViewHolder(ViewHolder viewHolder, int i) { 

if(greetingsList != null && greetingsList[i].length != "") 
    viewHolder.ivGreetings.setImageResource(Integer.valueOf(greetingsList[i])); 
else 
    viewHolder.ivGreetings.setImageResource(0); 
} 

удачи!

+0

та же ошибка Я попробовал этот код – Joy

Смежные вопросы