Bom galera, precisava de um comando para dar set em uma imagem (ImageView) usando uma String.
O caso é o seguinte, irei mandar um Valor de um layout para outro, e de acordo com esse Valor eu iria dar set na minha imagem (ImageView). Alguem sabe como posso fazer isso? Obrigado.
Dar SET em uma imagem usando String
10 Respostas
Se essa string representar o caminho da imagem no sistema de arquivos do seu aparelho, basta fazer assim:
ImageView imageView = (ImageView) findViewById(R.id....);
Bitmap bmp = BitmapFactory.decodeFile(caminhoDaImagem);
bmp = Bitmap.createScaledBitmap(bmp, TAMANHO_X_DESEJADO, TAMANHO_Y_DESEJADO, true);
imageView.setImageBitmap(bmp);
Valeu carar. Mais e se a imagem for do tipo PNG …como faria? Esqueci de flar que tipo de imagem era.
Sem problemas… O método decodeFile é espertinho o suficiente.
Cara tem um problema no seu método …tentei aqui, mais o caminho começa com “R” pq é assim que eu falo para o compilador olhar dentro da pasta Resources. Porém, fotos que são colocadas dentro do compilador não podem possuir letras maiusculas.
Tem certeza de que sua String representa o caminho da imagem no sistema de arquivos, ou ela é uma imagem que está dentro da pasta res da sua app?
Ahh tah …ela tá dentro da pasta do APP…pq a ideia era o APP conter umas 5 fotos dentro dele, e pelo o que o usuario procurasse, a foto que iria aparecer era diferente. Então assim …se no layout 1 vc digitasse FUTBALL e desse OK …ele mandava um valor pro layout 2, e eu iria usar esse valor para dar SET em uma imagem que está dentro da pasta DRAWABLE do app. Mais se o cara digitasse BASKETE, iria para o mesmo layout 2, mais a imagem que seria setada seria uma imagem diferente.
Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.imagem_selecionada);
bmp = Bitmap.createScaledBitmap(bmp, TAMANHO_X_DESEJADO, TAMANHO_Y_DESEJADO, true);
imageView.setImageBitmap(bmp);
Amigo …ou eu ou vc não estamos entendendo oq o outro está falando kkkk
Olhá só …eu passei uma String do layout 1 para o layout 2 …e quero usar esse valor da string para dar set em uma imagem. Aonde eu uso a String nesse seu código ai de cima?
int id = getResources().getIdentifier(SUA_STRING_AQUI, "drawable", ctx.getPackageName());
Bitmap bmp = BitmapFactory.decodeResource(getResources(), id);
bmp = Bitmap.createScaledBitmap(bmp, TAMANHO_X_DESEJADO, TAMANHO_Y_DESEJADO, true);
imageView.setImageBitmap(bmp);
Cara…vlwww
Vc é fera mano …na real.
Estou procurando isso a dias aki e nao achei …consegui aki …funcionou certinho.