2011-09-19 21 views
9

Tengo un objeto RelativeLayout y quiero cambiar dinámicamente la imagen de fondo con un objeto Bitmap creado dinámicamente (cambia dinámicamente su color).Cómo usar relativelayout.setBackgroundDrawable() con un mapa de bits?

Vi que cuando quería actualizar la imagen de fondo del objeto RelativeLayout, solo puedo elegir setBackgroundDrawable() que requiere un objeto Drawable como parámetro.

Mi pregunta es, ¿cómo puedo convertir el objeto de mapa de bits creado dinámicamente en un objeto extraíble?

+0

es su imagen provienen de una fuente local o url? –

Respuesta

19

BitmapDrawable(obj) convertido en objeto de mapa de bits objeto estirable.

Probar:

RelativeLayout relative = (RelativeLayout) findViewById(R.id.relative1); 
Drawable dr = new BitmapDrawable(bit); 
(view).setBackgroundDrawable(drawable); 

espero que esto le ayudará.

+1

nuevo BitmapDrawable (mapa de bits) está en desuso; use el nuevo BitmapDrawable (getResources(), bitmap) –

+0

Esta respuesta se da más que antes de 3 años. Por lo tanto, podría tener la mayor posibilidad de desaprobar los métodos más antiguos a medida que aparecían nuevos métodos. En ese momento era correcto. – Siten

3

Prueba de esto,

Drawable drawable = new BitmapDrawable(bitmap); 
1
Drawable d = new BitmapDrawable(bitmap); 
6

Puede hacerlo de esta manera

Drawable drawable = new BitmapDrawable(bitmap); 
RelativeLayout r; 
r = (RelativeLayout) findViewById(R.id.relativelayout1); 
ll.setBackgroundDrawable(drawable); 
2
RelativeLayout rl=(RelativeLayout) findViewById(R.id.main1); 
Bitmap myImage = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher); 
Drawable dr = new BitmapDrawable(myImage); 
rl.setBackgroundDrawable(dr); 
0

// Crear referencia para RelativeLayout

RelativeLayout layout = (RelativeLayout) findViewById(R.id.rl); 

// establecer Antecedentes de referencia de diseño utilizando el siguiente método

Drawable drawable = getResources().getDrawable(R.drawable.bg); 
layout.setBackground(drawable); 

Nota: R.id.rl es Identificación de RelativeLayout

R.drawable.bg id the Image in drawabl e carpeta

Cuestiones relacionadas