|
||
|
|
|
|||||||
| Avisos |
| Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android |
![]() |
|
|
Herramientas |
|
#1
|
||||
|
||||
|
Cambiar background desde boton
Hola, acabo de empezar en esto del desarrollo de android y tengo una duda.
¿Como puedo hacer para cambiar el color de fondo de mi aplicación al pulsar sobre un botón? Gracias. Última edición por dureo Día 22/02/12 a las 17:11:23. |
|
|
|
#2
|
||||
|
||||
|
Con:
setBackgroundColor(int color) Tienes que aplicarlo sobre el contenedor principal, por tanto tienes que ponerle nombre para después poder encontrarlo con findViewById. |
|
#3
|
||||
|
||||
|
Muchísimas gracias, es lo que necesitaba.
![]() Funcionó perfectamente, aun tengo que entender mejor la logica de android, XD. |
|
#4
|
||||
|
||||
|
Estoy intentando hacer una aplicación que haga justo es, soy muy novato y aun no termino de entender muy bien el funcionamiento a la hora de programar.
Podrías poner el código para verlo?? Un saludo y gracias |
|
#5
|
||||
|
||||
|
findViewById(R.id.relativeLayoutCenter).setBackgro undColor(R.color.rojo);
findViewById -> buscas tu layout por su id, en mi caso el layout que quiero cambiar el fondo se llama "relativeLayoutCenter" setBackgroundColor -> le asignas un color y como parametro le pasas un numero entero. En mi caso tengo en la carpeta values un xml llamado color.xml con el siguiente codigo: <?xml version="1.0" encoding="utf-8"?> <resources> <color name="rojo">#ff0000</color> </resources> Espero que te sirva |
|
#6
|
||||
|
||||
|
Código:
public class MainActivity extends Activity {
private Button btBoton1;
private RelativeLayout loPadre;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_linterna_flash);
loPadre =(RelativeLayout) findViewById(R.id.layoutPadre);
btBoton1 = (Button)findViewById(R.id.toggleButton1);
btBoton1.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
loPadre.setBackgroundColor(Color.WHITE);
}
});
}
}
|
|
#7
|
||||
|
||||
|
Tambien teneis la posibilidad de poner el color desde el XML, pero esto se usa yo creo solo para ponerle un color y que no cambie luego, el atributo se llama android:background y se le pone a los layout's
__________________
|
|
#8
|
||||
|
||||
|
Y una duda, yo tambien soy nuevo desarrollando apps, y tengo una pregunta, como puedo cambiar el background, si es una foto.
Me explico, yo de background tengo otra foto y quiero poner otra foto de background, desde los botones. Gracias de antemano. |
|
#9
|
||||
|
||||
|
En el caso de que quieras poner una imagen externa tendrás que usar setBackground (o setBackgroundDrawable si el Target es anterior a Jelly Bean), pero primero tendrás que generar el Drawable a partir de la imagen externa. |
![]() |
Estás aquí
|
||||||
|
||||||