Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2.- Tras crear objeto Command, hay que definir la acción que puede hacer,
implementado la interfaz CommandListener.
3.- INTERFAZ = Clase solo con metodos declarados todos como abstract.
* También puede definir constantes.
4.- Es misión del programador programar los metodos
5.- La interfaz CommandListener solo incluye un método:
* CommandAction( Command c, Displayable d)
* Implementa el código correspondiente a las acciones a ejecutar cuando
el Command c contenido en el objeto Displayable d reciba un evento.
Clases genérica.
4.- 2 constructores:
* Lista vacia.
a). List( String titulo, int listType)
Objeto (List).
* Lista con un conjunto inicial de opciones( y de imágenes asociadas, si
se desea
a). List( String titulo, int listType, String[] eltos, Image[] imágenes)
b). Importante: eltos.length=imágenes.length
5.- Tipos de listas
a). Implicitas.
* Al seleccionar un elemento, se provoca una acción
* Útil para clásico menu de opciones
* La acción se implementa con CommandAction ( Command c,
Displayable d)
Objeto (List).
b). Exclusivas
* Solo se puede seleccionar un elemento a la vez ( RadioButton)
* La selección de opción no implica una acción.
* Hay que usar un Command para salvar la opcion seleccionada.
c). Múltiples
* se puede seleccionar todos los elementos deseados
* Análoga a exclusiva ( no implica acción; uso de Command para
guardar el contexto)
Objeto (List).
6.- Metodos de la Clase List
Objetos.
Clase TextBox.
1.- public class TextBox extends Screen
2.- Pantalla que permite editar texto en ella
3.- Hay que especificar su capacidad (no. Maximo de caracteres)
4.- Si excede la capacidad del dispositivo -> scrooll
5.- La capacidad devuelta por el constructor puede ser distinta a la
solicitada
* getMaxSize() devuelve la capacidad para un TextBox ya creado
6.- Restricciones de texto: gestionadas por la clase TextField.
Objeto (TextBox).
7.- Restricciones que podremos aplicar a un TextBox son:
8.- Constructor
TextBox(String titulo, String texto, int tamaño, int restricciones)
9.- Ejemplo : Crear un TextBox que sólo admite numeros y ademas oculta
el texto introducido.
Objeto (TextBox).
TextBox cajatexto=new TextBox(“contraseña”,””,30,
TextField.NUMERIC | TextField.PASSWORD)
10.- Métodos.
Objetos.
Clase Form.
1.- public class Form extends Screen.
2.- Contenedor de un número indeterminado de objetos.
3.- Esos objetos tienen que derivar de la clase Item
4.- Si se insertan demasiados objetos -> scroll
5.- Referencia a cada Item: mediante indices (desde 0 hasta
Form.size() -1) Un mismo Item no puede estar en mas de un Form a
la vez.
Objeto (Form).
6.- Métodos.
Objeto (Form).
7.- Gestión de eventos.
a). Similar a Command.
b). El MIDlet debe implementar ItemStateListener
* Contiene un solo metodo abstracto:
ItemStateChanged( Item item)
* Análogo a implementar CommandListener e incluir en el
MIDlet el código de CommandListener ( Command c,
Displayable d).
Objetos.
Clase StringItem.
1.- public class StringItem extends Item.
2.- Clase más simple que deriva de Item.
3.- Texto no modificable
4.- 2 constructores:
a). StringItem(String etiqueta, String texto)
b). StringItem( String etiqueta, String texto,int apariencia)
5.- Apariencia: Item.PLAIN, Item.HYPERLINK,Item.BUTTON
a). StringItem(etiqueta, texto,Item.PLAIN) = 1er constructor
Objeto (StringItem).
6.- Métodos.
Objetos.
Clase ImageItem.
1.- Public class ImageItem extends Item
2.- Inclusion de imágenes en un Form
3.- El usuario no puede interactuar con la imagen
4.- 2 constructores:
* ImageItem(String etiqueta, Image image, int layout,String textoalt)
* ImageItem(String etiqueta, Image image,int layout,String textoalt,
int apariencia)
5.- textoalt: cadena de texto alternativa a la imagen si esta excede la
capacidad de la pantalla.
6.- layout: posición de la imagen en la pantalla.
Objeto (ImageItem).
7.- Posibilidades de layout.
8.- Métodos
Objetos.
Clase TextField.
1.- public class TextField extends Item.
2.- Campo de texto insertable en un Form y editable.
3.- Diferencia con TextBox.
a). Ha de ser insertado en un formulario (TextBox es autónomo)
b). TextField deriva de Item; TextBox de Screen.
c). Eventos controlados por itemStateChanged(Item item); los del
TextBox, a través de commandAction ( Command c,Displayable d).
4.- Similitudes.
a). restricciones en las entradas ( ANSY,NUMERIC,PASSWORD,…)
5.- Constructor.
a).TextField( String etiqueta, String texto, int capacidad, int restricciones)
Objeto (TextField).
6.- Métodos.
Objetos.
Clase DateField.
1.- public class DateField extends Item.
2.- Gestión de fechas y horas en un Form.
3.- Hace uso de la clase java.util.Date
4.- Constructor:
a). DateField(String etiqueta,int Modo )
Modo: DATE,TIME,DATE_TIME
b). DateField(String etiqueta, int modo,java.util.TimeZone zonahoraria)
5.- Ejemplo:
Date fechaactual=new Date() //Crear objeto Date con fecha actual.
DateField fecha=new DateField(“Fecha”,DateField.DATE_TIME);
fecha.setDate(fechaactual); // Establecer en el objeto la fecha actual.
Objetos.
Clase ChoiceGroup.
1.- public class ChoiceGroup extends Item implements Choice
2.- Grupo de elementos seleccionables.
3.- Análogo a List, pero dentro de un Form
4.- Constructor.
a). ChoiceGroup(String etiqueta, int tipo)
b). ChoiceGroup(String etiq, int tipo, String[] elementos, Image[]
imágenes )
Objeto (ChoiceGroup).
5.- Métodos.
Objeto (ChoiceGroup).
6.- Gestion de eventos:
a). A través de itemStateChanged().
* Cuando el usuario selecciona una opción, el formulario
registra un ItemStateListener y se realiza una llamada a
ItemStateChanged().
* En ItemStateChanged(), se puede comprobar qué elemento
ha sido seleccionado y cuál no, realizando las acciones
pertinentes.
* Cada vez que se cambia una selección, se llama a
ItemStateChanged().
b). A través de CommandAction(), como con los objetos List.
Objetos.
Clase Gauge.
1.- public class Gauge extends Item
2.- Indicador de progreso mediante un gráfico de barras.
3.- Representa valores entre 0 y un valor máximo.
4.- Constructor:
* Gauge( String etiqueta, boolean interactivo, int valormax, int valorinicial)
5.- Dos tipos:
* Interactivo: el usuario puede modificar el valor actual del Gauge (
mediante botones y siempre dentro de [ 0-valormax])
* No Interactivo: la aplicación modifica el valor actual mediante
Gauge.setValor(int valor)
a). Muy util para indicar el progreso de una tarea.
Cibergrafìa
http://leo.ugr.es/J2ME/
http://wainu.ii.uned.es/canal-programacion/tutoriales/java/tutori
al-j2me.pdf
http://usuaris.tinet.cat/gporto/Programacion%20de%20juegos%2
0para%20moviles%20con%20J2ME.pdf
http://www2.elo.utfsm.cl/~iwg101/ClaseCelulares.pdf
http://ocw.uc3m.es/ingenieria-telematica/aplicaciones-moviles/m
aterial-de-clase-2/javame
http://creacionesmoviles.blogspot.mx/2011/12/introduccion-java-
me-j2me.html
http://ants.inf.um.es/~felixgm/docencia/j2me/resources/PortadaI
ndiceIntro.pdf
https://core.ac.uk/download/files/342/11228513.pdf
http://listpdf.com/ja/java-moviles-pdf.html