Como converter um bitmap para Drawable no android?
-
19-09-2019 - |
Pergunta
Como posso converter uma imagem de bitmap para Drawable?
Solução
Parece que você quer usar BitmapDrawable
A partir da documentação:
A
Drawable
que envolve um bitmap e lata estar lado a lado, esticado, ou alinhada. Vocês pode criar umBitmapDrawable
de um caminho do arquivo, um fluxo de entrada, através inflação XML, ou de umBitmap
objeto.
Outras dicas
Tente este que converte uma imagem de tipo Bitmap
para Drawable
Drawable d = new BitmapDrawable(getResources(), bitmap);
Depois de ter visto uma grande quantidade de problemas com bitmaps incorretamente escala quando convertido para um BitmapDrawable
, a forma geral para converter deve ser:
Drawable d = new BitmapDrawable(getResources(), bitmap);
Sem o Resources reference
, o bitmap
não pode processar corretamente, mesmo quando dimensionado corretamente. Existem inúmeras perguntas sobre aqui que seriam resolvidos simplesmente usando este método, em vez de uma chamada em linha reta com apenas o argumento bitmap
.
Esta é amostra de como converter bitmap para drawable
Bitmap bitmap;
//Convert bitmap to drawable
Drawable drawable = new BitmapDrawable(getResources(), bitmap);
imageView.setImageDrawable(drawable);
Eu usei com o contexto
//Convert bitmap to drawable
Drawable drawable = new BitmapDrawable(context.getResources(), bitmap);
Se você tem uma imagem bitmap e você quiser usá-lo em drawable, como
Bitmap contact_pic; //a picture to show in drawable
drawable = new BitmapDrawable(contact_pic);
Apenas faça o seguinte:
private void setImg(ImageView mImageView, Bitmap bitmap) {
Drawable mDrawable = new BitmapDrawable(getResources(), bitmap);
mImageView.setDrawable(mDrawable);
}
aqui está outra:
Drawable drawable = RoundedBitmapDrawableFactory.create(context.getResources(), bitmap);
mapa de bits secreta para Drawable no aplicativo sketchware usando o código
android.graphics.drawable.BitmapDrawable d = new android.graphics.drawable.BitmapDrawable(getResources(), bitmap);