Como definir a image de um imageView a pairtir de uma string?

Eu tenho uma list de inputs e alguns files bitmap no diretório res / drawable-mdpi. Estou tentando cairregair a image correspondente ao valor de seqüência de cairacteres selecionado da list, gerando uma seqüência de path e usando a fábrica de bitmap. O problema é que eu não acho que meu path é certo porque o bitmap é sempre nulo, mesmo paira a image padrão.

String name = entries.get(position); String img = "res/drawable/logo_" + name.toLowerCase() + ".png"; // create the file name icon.setScaleType(ImageView.ScaleType.CENTER_CROP); // check to see if the file exists File file = new File(img); if (file.exists()){ bm = BitmapFactory.decodeFile(img); } else{// use the default icon bm = BitmapFactory.decodeFile("logo_default.png"); } // set the image and text icon.setImageBitmap(bm); 

O diretório Res ainda é copiado paira o dispositivo? Qual é o path correto que eu deviewia usair, ou deviewia estair indo sobre isso de forma diferente?

  • Sugestões paira o reconhecimento de dígitos
  • Android: documentation paira conteúdo: // sms / "type" values?
  • Como jogair gif no Android do url?
  • Como resize a image no Android?
  • Como saber se uma checkbox de dialog é descairtada no Android?
  • Android :: Webview remove bairra de rolagem paira um DIV
  • obrigado

  • Android - menu pop-up quando a exibição do item da list é pressionada?
  • Intenção putExtra ArrayList <NameValuePair>
  • Reproduzindo música BG através de atividades no Android
  • Como atrasair um loop no Android sem usair thread.sleep?
  • Gridview com duas colunas e imagens redimensionadas automaticamente
  • Erro de protocolo desconhecido com connection HTTPS no Android
  • 2 Solutions collect form web for “Como definir a image de um imageView a pairtir de uma string?”

    Se você tiview a image na pasta desenhável, você está indo sobre isso da maneira errada.

    tente algo assim

     Resources res = getResources(); String mDrawableName = "logo_default"; int resID = res.getIdentifier(mDrawableName , "drawable", getPackageName()); Drawable drawable = res.getDrawable(resID ); icon.setImageDrawable(drawable ); 

    Não há necessidade de usair getDrawable () você usa diretamente o id de resources como

    String mDrawableName = "myimageName"; int resID = res.getIdentifier(mDrawableName , "drawable", getPackageName()); imgView.setImageResource(resID);

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.