500 likes | 663 Views
J2ME (JAVA). MIDLETS. Es una aplicación java que cumple las especificaciones CLCD y MIDP.A continuacion se profundiza en la descripcion de las caracteristicas que rodean a los midlets. CLCD:encargada de manejar el control la entrada /salida de datos, manejar tipos,cadenas etc.
E N D
J2ME (JAVA)
MIDLETS • Es una aplicación java que cumple las especificaciones CLCD y MIDP.A continuacion se profundiza en la descripcion de las caracteristicas que rodean a los midlets. • CLCD:encargada de manejar el control la entrada /salida de datos, manejar tipos,cadenas etc. • MIDP: conjunto de apis java que permiten la creacion de interfaces de usuario
Estructura basica de un MIDLET Este metodo hace acopio de los recursos que va ha necesitar import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class basico extends MIDlet { public void startApp() { } public void pauseApp() { } public void destroyApp(boolean unconditional) { } } Este metodo es invocado cuando se necesita detener la ejecucion del midlet temporalmente Este metodo es invocado por el sistema cuando el midlet tiene que ser destruido
Estructura basica de un MIDLET Este metodo representa el constructor import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class basico extends MIDlet { private Display display; public basico(){ } public void startApp() { private Display display; display=Display.getDisplay(this); display.setCurrent(objetoacolocar); } public void pauseApp() { } public void destroyApp(boolean unconditional) { } }
COMPONENTES DE INTERFAZ DE USUARIO • El API de MIDP nos proporciona una serie de componentes que nos permitirán construir las interfaces de usuario de forma sencilla. Por supuesto, aunque estos componentes son potentes para el entorno que nos ocupa, siempre hay que tener presenta las limitaciones de los dispositivos móviles en cuanto a pantalla y en cuanto a interacción con el usuario. • Como hemos visto en el código presentado hasta el momento, siempre debemos recoger el objeto de tipo Display que gestiona lo que muestra la pantalla del dispositivo display Display display; display = Display.getDisplay(this); display.setCurrent(null);
COMPONENTES DE INTERFAZ DE USUARIO display Display display; display = Display.getDisplay(this); display.setCurrent(null);
EXPLICACION DETALLADA • Display display; display = Display.getDisplay(this); display.setCurrent(null); CREAR UNA REFERENCIA Crear el objeto Display que es el control a la pantalla del dispositivo Este método a través del objeto de la clase Display lo podemos utilizar para poder colocar o insertar los distintos objetos que van ha mostrar en la pantalla
CODIGO FUENTE Display display; display = Display.getDisplay(this); display.setCurrent(null);
Componentes a Insertar a un objeto de la clase Display Form Alert display.setCurrent(objForm); display.setCurrent(objAlert); display display.setCurrent(objList); display.setCurrent(objTextBox); List TextBox
Componentes a Insertar a un objeto de la clase Display • Pantalla de aviso (Alert) • La clase Alert es una clase que muestra un mensaje determinado Sintaxis : Alert aviso ; aviso=new Alert(“Aviso General”); aviso.setTitle("titulo general"); aviso.setString("aviso detalloso");
Componentes a Insertar a un objeto de la clase Display • Pantalla de aviso (Alert) Alert aviso ; aviso=new Alert(“Aviso General”); aviso.setTitle("titulo general"); aviso.setString("aviso detalloso"); En este metodo estamos adicionando el aviso a la pantalla
Componentes a Insertar a un objeto de la clase Display Display • LA CLASE FORM • Un formulario esta constituido por la subclase Form(formulario), que puede contener cualquier combinación de componentes de la interfaz de usuario, incluyendo objetos de tipo String ,Image,TextField,DataField,Gauge o ChoiceGroup.cualquiera de las subclases de la clase Item, definida en la especificación MIDP, puede formar parte de la pantalla de tipo Form, de un formulario. Form
Componentes a Insertar a un objeto de la clase Display • LA CLASE FORM Sintaxis : Form formulario ; formulario=new Form("Formulario");
Componentes a Insertar a un objeto de la clase Display • LA CLASE FORM • Form formulario ; • formulario=new Form("Formulario"); En este metodo estamos adicionando el formulario a la pantalla
Componentes que se insertan sobre un formulario(Form) Display • Los principales componentes que se insertan en un formulario son : • TextField • ChoiceGroup • DateField • Etc,etc……. Form
Componentes que se insertan sobre un formulario(Form) • TextField : es un objeto que describe un campo de texto y se inserta sobre un objeto de la clase Form. Sintaxis: TextField campoTexto ; campoTexto=new TextField("Campo de Texto", “1234", 10, TextField.NUMERIC); Caracteres numéricos impresos dentro del campo de texto Define la modalidad de entrada de datos Etiqueta que describe el componente Numero de caracteres permitidos
Componentes que se insertan sobre un formulario(Form) 10 caracteres
Componentes que se insertan sobre un formulario(Form) Este metodo me permite insertar el campo de texto al formulario
Componentes que se insertan sobre un formulario(Form) • TextField : Sintaxis: TextField campoTexto; campoTexto=new TextField("Campo de Texto", “1234", 10, TextField.NUMERIC); TextField.NUMERIC : entrada numérica TextField.URL : soporta la dirección URL TextField.EMAILDDR : soporta la dirección de un correo TextField.ANY : soporta un texto cualquiera
Componentes que se insertan sobre un formulario(Form) • ChoiceGroup • Un objeto ChoiceGroup define un grupo de elementos seleccionados que pueden incluirse en un objeto ,solamente soporta los modos de selección exclusivo y multiple.
Componentes que se insertan sobre un formulario(Form) • ChoiceGroup Sintaxis : String[] paises={“peru", “chile", “brasil"}; ChoiceGroup w ; w=new ChoiceGroup(“Paises :",List.EXCLUSIVE,paises,null); Etiqueta que describe el componente Modalidad de seleccion Cargado del contenido del componente Parametro nulo por defecto
Componentes que se insertan sobre un formulario(Form) Este metodo me permite insertar el choiceGroup al formulario
PARA CAPTURAR LOS ELEMENTOS DEL CHOICEGROUP int q= g1.getSelectedIndex();
Componentes que se insertan sobre un formulario(Form) • DateField • Un componente DateField es un objeto que puede presentar la fecha y la hora sobre un objeto Form. Si no se inicializa el metodo setDate() devolvera null de forma que la interfaz de usuario debe tener prevista la indicacion de una fecha desconocida. • Un objeto de tipo DateField puede configurarse para aceptar una fecha , una hora o ambas cosas a la vez. Si se indica el modo DATE, solamente admitira fechas , si el modo indicado es TIME solamente permitira la utilizacion de horas y minutos y si se indica el modo de funcionamiento como DATE_TIME , permitira el uso de fecha y hora.
DateField • Sintaxis : • DateField calendario ; calendario=new DateField("",DateField.DATE_TIME); calendario.setDate(new Date()); Tipo de calendario Calendario inicializado
Componentes que se insertan sobre un formulario(Form) • DateField
Componentes que se insertan sobre un formulario(Form) • DateField
Comandos de pantalla • Me permite definir una serie de mecanismos a los usuarios para que naveguen a través de diferentes pantallas que constituirán la aplicación que se ejecute en el dispositivo móvil. El paquete javax.microedition.lcdui proporciona la clase Command, que es la que va a implementar los comandos que se presentan en la pantalla del dispositivo móvil para permitir la navegación
Comandos de pantalla • Los comandos se presentan al usuario en base a la sucesion de pantallas.El objeto Command encapsula el nombre y toda la informacion relacionada con la semantica de la accion correspondiente al comando. Su objetivo principal es presentar una lista de posibles acciones al usuario. El comando resultante de esa selección estara definido en un objeto de tipo CommandListener asociado a la pantalla.
Comandos de pantalla Command ok ; ok = new Command("Aceptar", Command.OK, 1); Command salir; salir= new Command("Salir", Command.EXIT, 1);
Eventos del comando de pantallas • Se implementa la interfaz CommandListener import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class Negocio extends MIDlet implements CommandListener { Command ok ; Command salir ; public void commandAction(Command c, Displayable s){ if (c == salir){ destroyApp(true); notifyDestroyed(); }else if(c==ok){ } } public Negocio( ) { ok = new Command("Aceptar", Command.OK, 1); salir= new Command("Salir", Command.EXIT, 1); } }
Eventos del comando de pantallas • Se implementa la interfaz CommandListener import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class Negocio extends MIDlet implements CommandListener { Command ok ; Command salir ; public void commandAction(Command c, Displayable s){ if (c == salir){ destroyApp(true); notifyDestroyed(); }else if(c==ok){ } } public Negocio( ) { ok = new Command("Aceptar", Command.OK, 1 ); salir= new Command("Salir", Command.EXIT, 1); } }
Eventos del comando de pantallas • Se implementa la interfaz CommandListener import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class Negocio extends MIDlet implements CommandListener { Command ok ; Command salir ; public void commandAction(Command c, Displayable s){ if (c == salir){ destroyApp(true); notifyDestroyed(); }else if(c==ok){ } } public Negocio( ) { ok = new Command("Aceptar", Command.OK, 1); salir= new Command("Salir", Command.EXIT, 1); } }
Eventos del comando de pantallas • Se implementa la interfaz CommandListener import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class Negocio extends MIDlet implements CommandListener { Command ok ; Command salir ; public void commandAction(Command c, Displayable s){ if (c == salir){ destroyApp(true); notifyDestroyed(); }else if(c==ok){ } } public Negocio( ) { ok = new Command("Aceptar", Command.OK, 1); salir= new Command("Salir", Command.EXIT, 1); } }
Eventos del comando de pantallas • Se implementa la interfaz CommandListener import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class basico extends MIDlet implements CommandListener { Command ok ; Command salir ; public void commandAction(Command c, Displayable s){ if (c == salir){ destroyApp(true); notifyDestroyed(); }else if(c==ok){ } } public basico( ) { ok = new Command("Aceptar", Command.OK, 1); salir= new Command("Salir", Command.EXIT, 1); } }
Display Form
Display Form
Display Form
Display Form
Como crear un proyecto para dispositivos celulares • Paso # 1 : crear un nuevo proyecto • Paso # 2 : en la ventana seleccionar en categorias ,la opción mobility y en la derecha en projects elegir MIDP Aplication Seleccionar nuevo proyecto Seleccionar MIDP Aplication Seleccionar Mobility Presionar Botón siguiente
Como crear un proyecto para dispositivos celulares • Paso # 3: se pone el nonbre el proyecto y de deselecciona create hello MIDlet Seleccionar nuevo proyecto
Como crear un proyecto para dispositivos celulares • Paso # 4: se presionar finalizar Presionar finalizar
Como crear un proyecto para dispositivos celulares • Paso # 5 : proyecto creado satisfactoriamente
Como crear un proyecto para dispositivos celulares • Paso # 6 : crear un paquete
Como crear un proyecto para dispositivos celulares • Paso # 7: poner nombre del paquete
Como crear un proyecto para dispositivos celulares • Paso # 8: poner nombre del paquete
Como crear un proyecto para dispositivos celulares • Paso # 9: poner nombre del MIDlet