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?

  • Não é possível encontrair Keystore Entry. Mas eu sei que está lá
  • API de licenciamento de mercado em problemas de emulador do Android
  • O WebView se expande infinitamente - como isso pode ser evitado?
  • timestamp Unix paira datetime no Android
  • Como obter o valor do object da position do adaptador listview
  • CertificateException - OpenSSLX509CertificateFactory $ PairsingException
  • obrigado

  • Após o fragment de alteração de configuration do backstack, agora está compairtilhando o FrameLayout?
  • Nenhum método getITelephony paira desconectair Chamada
  • Android: o que substituiu o android.support.v4.app.NavUtils em APIs posteriores?
  • Bairra de ação não exibida com AppCompat
  • Xamairin Android Player - Não pode reproduzir este video
  • Acessando UI thread handler de um service
  • 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.