|
||
|
|
|
|||||||
| 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
|
||||
|
||||
|
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 |
|
|
|
#2
|
||||
|
||||
|
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. |
|
#3
|
||||
|
||||
|
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. |
|
#4
|
||||
|
||||
|
Por cierto
no hay en ningun sitio una traduccion del DEV Guide ni de la Reference es que mi ingles es muy limitadito saludos. |
|
#5
|
||||
|
||||
|
siempre puedes tirar de google traductor. pero si te quieres dedicar a este mundo deberias empezar a leer guias en inglés YA
|
![]() |
Estás aquí
|
||||||
|
||||||