Las aplicaciones en AIR cuando uno llama al método close() de la clase NativeWindow inmediatamente dicha ventana se cierra y es lo esperado en primer momento, pero puede que muchas veces el usuario lo haga por error. Para evitarlo simplemente podemos hacer uso del evento CLOSING para notificar al usuario que la aplicación se esta por cerrar y validar dicha acción, también es útil para aquellas aplicaciones que sean sensibles a tareas que se deban efectuar antes de ser cerradas definitivamente.
Para este ejemplo utilizaremos una clase personalizada para crear una ventana de alerta donde se le notifica al usuario de la acción y se le pide que confirme. Aprovecho para dejarle la referencia de esta clase Alert que es muy buena y útil para muchos casos, ya sea para proyectos en AS3, Flex o AIR.
-
//importa la clase personalizada
-
import Alert;
-
//creo el objeto alert
-
Alert.init(stage);
-
//agregamos el escuchador al stage para detectar si se
-
//llamo a cerrar la aplicación, el evento encargado del mismo es Event.CLOSING
-
stage.nativeWindow.addEventListener(Event.CLOSING,cerrarAplicacion);
-
//
-
function cerrarAplicacion(e:Event):void {
-
//aquí detenemos el evento por defecto de cerrar
-
e.preventDefault();
-
//ejecuto el alert, para ver mejor como funciona la
-
//clase alert recomiendo que vean el site y su referencias
-
Alert.show("¿Realmente decea salir?",{background:"blur",colour:0xFFFFFF,buttons:["Si", "Cancelar"], callback:handleResponse});
-
function handleResponse(response:String):void {
-
if (response=="Si") {
-
//si es correcto cierra
-
stage.nativeWindow.close();
-
} else {
-
//sino hacemos otra cosa si queremos!
-
}
-
}
-
}
23 mayo, 2011 at 12:15 pm
donde se coloca el archivo de la clase porque no me genera un error al publicar la pelicula error:5001