2013-11-18 3 views
-1

Я пытаюсь добавить иконки в сетку динамически на основе пути, предоставляемого службой, Я добавил значки в папку с ресурсами, я получаю исключение из файла, но не могу исправить его.Изображение Не найдено исключение android

Ниже мой код,

  try 
       { 
       InputStream im = context.getAssets().open(App.Path); 
       Drawable d = Drawable.createFromStream(im, null); 

      } 
      catch(IOException e) 
      { 
       e.printStackTrace(); 
      } 

enter image description here

+0

попробовать это 'context.getResources() getAssets() открытые (App.Path);' –

ответ

0

На самом деле проблема с префикс/активы/:)

try { 
     String image = App.Path; 

     if (image.contains("/assets/")) { 
      image = image.replace("/assets/", ""); 
     } 

     InputStream ims = getAssets().open(image); 
     Drawable d = Drawable.createFromStream(ims, null); 
     imageView.setImageDrawable(d); 

    } catch (IOException ex) { 
     return; 
    } 
1

Я вижу, у вас есть "Профиль Registration.png" -> переименовать файл, чтобы он не должен содержать пробелов. Что-то вроде: «profile_registration.png»

+0

жаль DInt работу..! – Sajeetharan

+0

Файл изображения находится в папке MenuIcons в папке «assets»? – Hitman

+0

Да, если вы хотите, я могу предоставить снимок экрана – Sajeetharan

0

Пожалуйста, проверьте доступность ваших файлов.

Если файлы там, сделать следующие инструкции

Вместо

InputStream im = context.getAssets().open(App.Path); 

, пожалуйста, используйте этот

InputStreamReader im = new InputStreamReader(getApplicationContext().getAssets().open("path name upto file"))); 

Пожалуйста, используйте this.It будет работать

0

Попробуйте это:

try { 
     String image_path = App.Path; 
     String filepath = null; 
     if (image_path.contains("/ASSETS/")) { 
      filepath = image_path .replace(ASSETS, ""); 
     }  
     InputStreamReader im = new InputStreamReader(getApplicationContext().getAssets().open(filepath))); 
     Drawable d = Drawable.createFromStream(ims, null); 
     imageView.setImageDrawable(d); 

    } catch (IOException ex) { 
     return; 
    } 
Смежные вопросы