[RESOLVIDO]Ajuda com Imagens [Android]

6 respostas
R

Boa tarde,

Pessoal estou trabalhando com os componentes Gallery e ImageSwitcher…

Só q as imagens q vem do servidor são mto grandes e algumas chegam a dar Exceção java.lang.OutOfMemoryErro

Alguém sabe oq posso fazer para não deixar dar exceção…qualquer ajuda é bem vindo…

Vlw

6 Respostas

Marky.Vasconcelos

Carregar elas em um tamanho menor, o método decodeResource da BitmapFactory aceita um inteiro que é para samplear a imagem.

Se voce coloca 2, voce terá uma imagem com metade do tamanho original que ocupa só 1/4 da memoria.

R

Cara esse metodo decodeResource recebe uma Resource e um Id...

Como adaptaria esse metodo para usar no meu metodo

Nao sei se eu entendi direito, mas pra eu usar esse metodo eu teria q ter essa imagem no aparelho não é?

Estou usando esse metodo para baixar a imagem apatir de uma URL

public Bitmap baixarImagem(String url) throws IOException {
	
			// definindo a URL
			URL aURL = new URL(url);
			// definindo a conexao
			URLConnection conn = aURL.openConnection();

			// conectando
			conn.connect();

			// pegando a imagem
			InputStream is = conn.getInputStream();

			// criando o buffer
			BufferedInputStream bis = new BufferedInputStream(is);

			// transformando a imagem de stream para um bitmap
			Bitmap bm = null;
			
			bm = BitmapFactory.decodeStream(bis);

			// fechando os streans
			bis.close();
			is.close();

			return bm;
		
	}
Marky.Vasconcelos

Nesse caso voce precisa usar o BitmaFactory.Options para fazer o downsample.

BitmapFactory.Options options = new Options();
options.inSampleSize = 2;
Bitmap bmp = BitmapFactory.decodeStream(stream, null, options);
R

Legal vlw…

Cara so pra eu entender como esse cara funciona…

Ele vai baixar a imagem com um qualidade menor é isso?

Como funciona esse cara exatamente sabe explicar???

Obrigado

Marky.Vasconcelos

Ele ainda usa a mesma stream completa, a diferença é como ele decodifica.

Voce pode ver sobre imagens em Displaying Images Efficiently, sobre down sample no loading bitmaps.

R

Ok,

Mto Obrigado.

Criado 22 de agosto de 2012
Ultima resposta 23 de ago. de 2012
Respostas 6
Participantes 2