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 03/03/12, 12:02:12
Array

[xs_avatar]
anggar anggar no está en línea
Miembro del foro
 
Fecha de registro: mar 2009
Mensajes: 73
Modelo de smartphone: htc diamond

Duda con Intent

Hola estoy con mi primer programa
ya hace lo que quiero y calcula una serie de cosas que necesito.

pero ahora queria implementar unas pantallas de ayuda
el tema es que siguiendo un tutorial por youtube lo hago y me sale bien
es decir creo un nuevo ayuda01.xml y le doy a un boton de la pantalla principal la utilidad de cambiar de pantalla y sale sin problema
el problema es cuando desde esa otra pantalla hago lo mismo para volver a la vnetana principal entonces me sale un error y el programa se cuelga.

Os pongo lo que he hecho a ver si alguien ve el problema.

desde aqui me voy a la segunda pantalla.

ayuda01=(ImageView)findViewById (R.id.ibAyuda01);
ayuda01.setOnClickListener(this);

public
void onClick(View v) {
// TODO Auto-generated method stub


switch (v.getId()){
case R.id.ibAyuda01:

// lo que nos pasa a otra ventana


Intent intent1=
new Intent ("com.app.tecnich.es.ayuda01");
startActivity (intent1);



break;

y apra volver desde la segunda pantalla


volvermenu01
= (Button) findViewById (R.id.btVolvermenu01);

volvermenu01.setOnClickListener(this)

public
void onClick(View v) {
// TODO Auto-generated method stub

// esto nos devuelve a la ventana principal


switch (v.getId()){

case R.id.btVolvermenu01:

Intent intent1=
new Intent ("com.app.tecnich.es.main");
startActivity (intent1);

break;
}


en el manifiest:

<
application

android:icon="@drawable/iconoehe1"

android:label="@string/app_name"

>

<activity

android:name=".SPINNERActivity"

android:label="@string/app_name">

<intent-filter>

<actionandroid:name="android.intent.action.MAIN"/>


<categoryandroid:name="android.intent.category.LAUNCHER"/>

<intent-filter>

<activity>



<activity

android:name=".Ayuda01"

android:label="@string/app_name1">

<intent-filter>

<actionandroid:name="com.app.tecnich.es.ayuda01"/>


<categoryandroid:name="android.intent.category.DEFAULT"/>

<intent-filter>

<activity>

Gracias por la ayuda
Responder Con Cita


  #2  
Viejo 03/03/12, 13:42:46
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
Esa no es una forma muy correcta de hacerlo, para Activities que pertenecen a la misma aplicación lo mejor es hacer esto:

Intent intent = new Intent(ClaseActual.this, NuevaClase.class);
startActivity(intent);

Que en tu caso supongo que sería algo así para la pantalla de ayuda:

Intent intent = new Intent(Main.this,Ayuda01.class);

Y para volver a la pantalla anterior puedes hacerlo de 2 formas:

1) Simplemente con: finish()

Haciendo esto se cerrará Ayuda01 y volverás a Main, la ventaja de usar este método es que si en Main hay cuadros de texto, o checkboxs, o lo que sea, que el usuario ha modificado antes de ir a Ayuda01, seguirán marcados cuando el usuario vuelva

2) Creando la Intent al revés que la anterior y además liberando el TOP, así:

Intent intent = new Intent(Ayuda01.this, Main.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);

Haciendolo así se creará una nueva Activity Main, pero completamente inicializada, además con el flag de CLEAR TOP el sistema automaticamente liberará todas las pantallas que fueron creadas sobre el último Main, así que si por ejemplo abres una ventana de ayuda desde el main, que a su vez abre otra ventana de ayuda y luego vuelves al Main creando un nuevo Intent con el flag de CLEAR TOP, las 2 ventanas de ayuda que se crearon sobre el Main se liberarán.
Responder Con Cita
  #3  
Viejo 04/03/12, 09:36:31
Array

[xs_avatar]
anggar anggar no está en línea
Miembro del foro
 
Fecha de registro: mar 2009
Mensajes: 73
Modelo de smartphone: htc diamond

Gracias kirogeN

probare lo que me dices aunque el 1º metodo me parece el apropiado ya que el segundo me obligaria a guardar todos los datos antes de pasar a la pantalla de ayuda y refrescar la pantalla inicial al volver.

Parece facil

aunque he estado trasteando la Dev Guide y creo que seria mas facil usando TOAST o DIALOG he visto que se puede hacer lo qeu quiero que es muy basico en realidad es solo una ayuda de cada uno de los valores que pide la aplicacion y la mayoria solo son texto aunqeu en alguno habria que meter una imagen y he visto que con el toast se puede hacer.

Gracias de nuevo ya te dire si me ha funcionado.
Responder Con Cita
  #4  
Viejo 04/03/12, 09:37:18
Array

[xs_avatar]
anggar anggar no está en línea
Miembro del foro
 
Fecha de registro: mar 2009
Mensajes: 73
Modelo de smartphone: htc diamond

Por cierto

no hay en ningun sitio una traduccion del DEV Guide ni de la Reference
es que mi ingles es muy limitadito

saludos.
Responder Con Cita
  #5  
Viejo 10/03/12, 10:14:11
Array

[xs_avatar]
galcober galcober no está en línea
Miembro del foro
 
Fecha de registro: jun 2011
Localización: Zaragoza
Mensajes: 48
Modelo de smartphone: Jiayu G3
Tu operador: Pepephone
siempre puedes tirar de google traductor. pero si te quieres dedicar a este mundo deberias empezar a leer guias en inglés YA
Responder Con Cita
Respuesta

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



Hora actual: 18:08:33 (GMT +1)



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

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