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

Respuesta
 
Herramientas
  #1  
Viejo 12/09/13, 01:00:59
Array

[xs_avatar]
manolazo manolazo no está en línea
Miembro del foro
 
Fecha de registro: jun 2012
Localización: Madrid
Mensajes: 219
Modelo de smartphone: Samsung Galaxy S7 edge
Tu operador: Pepephone
layout encima de otro.

Buenas.

Como se podria conseguir poner el típico layout de fin de pantalla y que por debajo aparezca la pantalla que has terminado?
Si lo hago con un layout y lanzo una nueva actividad una vez terminada la pantalla, esta taparia la anterior. Una idea aproximada es esta:


Un saludo.
Imágenes Adjuntas
Tipo de Archivo: png 2013-09-12 00.33.35.png (158.8 KB, 53 visitas)
Responder Con Cita


  #2  
Viejo 12/09/13, 09:40:31
Array

[xs_avatar]
mocelet mocelet no está en línea
Desarrollador
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -

Lo que hago en ese caso es tener un layout superpuesto en la misma actividad con fondo translúcido (el color que mejor venga, negro tal vez para que oscurezca, con un valor alpha de transparencia, p.ej. #AA000000).

No hace falta cambiar de actividad, simplemente mostrar el layout al finalizar la partida u ocultarlo.

Otra opción similar es usar un ViewStub, que te permite tener la definición de ese layout en un fichero independiente y cargarlo cuando vayas a mostrarlo.

Hacerlo como actividad independiente también es posible, aquí lo explican bien http://stackoverflow.com/questions/2...ity-in-android, aunque personalmente prefiero un layout superpuesto.
__________________
El mejor Cuatro en Raya de Android (Hilo en HTCMania, Play Store) ¡Un millón de descargas!
Responder Con Cita
  #3  
Viejo 12/09/13, 20:18:31
Array

[xs_avatar]
manolazo manolazo no está en línea
Miembro del foro
 
Fecha de registro: jun 2012
Localización: Madrid
Mensajes: 219
Modelo de smartphone: Samsung Galaxy S7 edge
Tu operador: Pepephone
Hola, como muestras el layout al finalizar la partida?

Podria ser de la siguiente manera?

1. Creo el xml :

Código:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    
    android:id="@+id/linearfinpantalla1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/textView1_finpantalla1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:text="@string/nivel_completado"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <ImageView
        android:id="@+id/imageView1_finpantalla1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:src="@drawable/boton_thumbsup2" />
              .
              .
              .
2. Creo una clase extendiendo de un LinearLayout e inflar el xml: (esto creo que lo hago mal)
Código:
public class Finpantalla1 extends LinearLayout{
		
	TextView text1, text2, text3;
	
	public Finpantalla1(Context context) {
		super(context);
		LayoutInflater li = (LayoutInflater)getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
		li.inflate(R.layout.finpantalla1_layout, this, true);
		
		text1 = (TextView)findViewById(R.id.textView5_finpantalla1);
		text2 = (TextView)findViewById(R.id.textView6_finpantalla1);
		text3 = (TextView)findViewById(R.id.textView7_finpantalla1);
		
		text1.setText("lo que sea");
		text2.setText("hola que tal");
		text3.setText("hola buenas");
		
	}

}
3. Como añado la view personalizada a en la actividad principal? Esto no me sale:

Código:
protected void onCreate(Bundle savedInstanceState) {		
		super.onCreate(savedInstanceState);			
		
		LinearLayout linearfin = (LinearLayout)findViewById(R.id.linearfinpantalla1);
		Finpantalla1 finpanta = new Finpantalla1(this);
		linearfin.addView(finpanta);
Como digo no me sale, alguna ayuda?
Responder Con Cita
  #4  
Viejo 12/09/13, 20:37:20
Array

[xs_avatar]
mocelet mocelet no está en línea
Desarrollador
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -

La forma cutre-rápida: usa un RelativeLayout de base en la actividad del juego (con el LinearLayout no vas a poder poner nada encima), y al final, en el xml, defines el LinearLayout con los elementos del marcador. Ese layout y sus elementos lo dejas con el atributo visible a invisible, y cuando toque mostrarlo actualizas las variables y lo pones visible.

La forma elegante es usar un ViewStub, que viene a ser un "aquí me cargas tal fichero layout". Sigues necesitando un RelativeLayout de base o no podrás poner ninguna view adicional encima de lo demás. Y el layout del marcador ya lo defines en otro xml independiente. Como en el ejemplo: http://android-developers.blogspot.c...mize-with.html
__________________
El mejor Cuatro en Raya de Android (Hilo en HTCMania, Play Store) ¡Un millón de descargas!
Responder Con Cita
  #5  
Viejo 12/09/13, 21:05:22
Array

[xs_avatar]
manolazo manolazo no está en línea
Miembro del foro
 
Fecha de registro: jun 2012
Localización: Madrid
Mensajes: 219
Modelo de smartphone: Samsung Galaxy S7 edge
Tu operador: Pepephone
A ver si me entero.

Yo como tablero principal uso un LinearLayout de base. Dices usar un RelativeLayout en vez del linear . Dices que al final del Relative ponga el linear que yo tengo con todo y que los marcadores queden por encima sobreescribiendo todo pero con valores invisibles para una vez termine el juiego cambiarlo a visible ??

Claro con el Relative se sobreescribe todo ... .Voy a probarlo tambien a ver como sale.

No obstante. lo de inflar de un xml seria correcto para este caso? Es por probar varios metodos.

Que falla en el codigo que tengo puesto??

Un saludo.
Responder Con Cita
  #6  
Viejo 14/09/13, 02:55:52
Array

[xs_avatar]
manolazo manolazo no está en línea
Miembro del foro
 
Fecha de registro: jun 2012
Localización: Madrid
Mensajes: 219
Modelo de smartphone: Samsung Galaxy S7 edge
Tu operador: Pepephone
Ya lo resolvi el otro dia tal y como me indicaste. Use los dos metodos y en ambos sale igual aunque es cierto que con ViewStub es bastante sencillo.

Un saludo.
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android



Hora actual: 07:21:46 (GMT +1)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2026 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /