Interfaces de usuario [Entradas en Android]
|
|
- Emilia Díaz Barbero
- hace 7 años
- Vistas:
Transcripción
1 Interfaces de usuario [Entradas en Android] M. en C. Sergio Luis Pérez Pérez UAM CUAJIMALPA, MÉXICO, D. F. Trimestre 14-P Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 1 / 34
2 Uso de hilos en Android Uso de hilos en Android 1 Uso de hilos en Android 2 Eventos de usuario 3 Teclado 4 Pantalla táctil 5 Sensores Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 2 / 34
3 Uso de hilos en Android Uso de hilos en Android I Cada vez que se ejecuta una aplicación en Android el sistema crea un proceso Linux. Si es una aplicación Java el proceso la ejecuta sobre su propia máquina virtual Dalvik. Si es código nativo se ejecuta directamente. El proceso contiene un hilo por defecto llamado hilo principal. Este hilo principal ejecuta los métodos oncreate(), ondraw() y onkeydown(). Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 3 / 34
4 Uso de hilos en Android Uso de hilos en Android II Si se desea realizar un trabajo intensivo, como esperar datos de Internet, se debe encargar a otro hilo. Todo hilo seguirá creado por una aplicación seguirá ejecutándose aún cuando la aplicación se encuentre en segundo plano. Otro problema surge cuando dos hilos tratan de acceder a la misma variable al mismo tiempo. Para evitar que un hilo lea datos que están siendo modificados por otro hilo se utiliza la exclusión mutua. En Java, la exclusión mutua se logra mediante la palabra reservada synchronized. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 4 / 34
5 Uso de hilos en Android Uso de hilos en Android III synchronized permite definir una región crítica. El proceso que realiza es el siguiente: 1 Cada vez que se entra a un método o bloque marcado con esta palabra se pregunta si otro hilo a entrado a la región critica de ese objeto. 2 Si ningún otro hilo ha entrado entonces el actual entra normalmente. 3 Si otro hilo ha entrado entonces el hilo actual es suspendido y espera a que termine el que ya estaba dentro. Las regiones críticas son definidas a nivel de objeto más no de clase, por lo que las regiones críticas de varias instancias son independientes. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 5 / 34
6 Uso de hilos en Android Uso de hilos en Android IV La región crítica se define por clase, es decir, aunque se haya utilizado synchronized en varios métodos, en realidad solo habrá una región crítica. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 6 / 34
7 Eventos de usuario Eventos de usuario 1 Uso de hilos en Android 2 Eventos de usuario 3 Teclado 4 Pantalla táctil 5 Sensores Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 7 / 34
8 Eventos de usuario I Eventos de usuario Android captura los eventos de forma homogénea y se los pasa a la clase encargada para procesarlos. Los eventos serán procesados generalmente por un objeto de tipo View. Los eventos son atendidos por: Event Listener y Event Handler. Un Event Listener es una interfaz de la clase View y contiene un método callback que debe ser registrado. A continuación se presentan algunos métodos con sus interfaces Event Listener: Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 8 / 34
9 Eventos de usuario II Eventos de usuario Event Listener I onclick: OnClickListener. Es llamado cuando se selecciona un elemento. Responde a la pantalla táctil, las teclas de navegación y el trackball. onlongclick: OnLongClickListener. Es llamado cuando un elemento es seleccionado por más de un segundo. onfocuschange: OnFocusChangeListener. Es llamado cuando se navega dentro o fuera de un elemento. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 9 / 34
10 Eventos de usuario III Eventos de usuario Event Listener II onkey: OnKeyListener. Es llamado cuando se presiona o se suelta una tecla. ontouch: OnTouchListener. Es llamado cuando se presiona, se suelta o se se desplaza en la pantalla táctil. oncreatecontextmenu: oncreatecontextmenulistener. Es llamado cuando se crea un menú de contexto. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 10 / 34
11 Eventos de usuario IV Eventos de usuario Implementación de un Event Listener. (Clase anónima) Button boton = (Button)findViewById(R.id.boton); boton.setonclicklistener( new OnClickListener (){ public void onclick(view vista){ //Instrucciones } }); Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 11 / 34
12 Eventos de usuario V Eventos de usuario Implementación de un Event Listener. (Implementar interfaz) public class Ejemplo extends Activity{ public void oncreate(bundle savedvalues){ Button boton = (Button)findViewById(R.id.boton); boton.setonclicklistener(new Ejemplo()); } } public class Ejemplo implements OnClickListener{ public void onclick(view vista){ //Instrucciones } } Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 12 / 34
13 Eventos de usuario VI Eventos de usuario El Event Handler permite crear varios métodos callback para los descendientes que sean creados a partir de View. Con Event Handler se pueden utilizar los manejadores por defecto para los descendientes de View. Utilizando los métodos por defecto ya no es necesario implementar las interfaces ni registrar los métodos callback (como setonclicklistener()). A continuación se presentan algunos de estos métodos: Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 13 / 34
14 Eventos de usuario Eventos de usuario VII Handle Listener onkeydown(int keycode, KeyEvent e): Es llamado cuando una tecla es presionada. onkeyup(int keycode, KeyEvent e): Es llamado cuando una tecla deja de ser presionada. ontrackballevent(motionevent me): Es llamado cuando se mueve el trackball. ontouchevent(motionevent me): Es llamado cuando se presiona la pantalla táctil. onfocuschanged(boolean obtenerfoco, int direccion, Rect rectangulofoco): Es llamado cuando se cambia el foco. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 14 / 34
15 Teclado Teclado 1 Uso de hilos en Android 2 Eventos de usuario 3 Teclado 4 Pantalla táctil 5 Sensores Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 15 / 34
16 Teclado Ejemplo 1 I 1 Crear un proyecto y agregar una etiqueta TextView en la actividad principal. 2 Agregar el siguiente código para que cada que sea presionada una tecla aparezca algún mensaje en la etiqueta. 3 Cada vez que una tecla es presionada el método onkeydown es llamado. 4 El primer parámetro de onkeydown (int) denota el código de la tecla presionada y el segundo (KeyEvent) permite obtener la información relacionada al evento. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 16 / 34
17 Ejemplo 1 II Teclado 5 Los eventos de teclado pueden ser recogidos sólo desde aquellas vistas que tienen la propiedad focusable= public boolean OnKeyDown(int codigotecla, KeyEvent evento){ super.onkeydown(codigotecla, evento); TextView vista = (TextView)findViewById(R.id.miEtiqueta); switch(codigotecla){ case KeyEvent.KEYCODE DPAD UP:{ vista.settext( Arriba ); }break; default:{ vista.settext( Otra tecla ); }break; } return true; } Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 17 / 34
18 Pantalla táctil Pantalla táctil 1 Uso de hilos en Android 2 Eventos de usuario 3 Teclado 4 Pantalla táctil 5 Sensores Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 18 / 34
19 Pantalla táctil Pantalla táctil I La pantalla táctil es el principal dispositivo de entrada. Mediante la pantalla táctil es posible seleccionar, arrastrar y soltar cualquier elemento. También se usa como sustito del teclado en los dispositivos que no cuentan con uno físico. Otra forma de utilizar la pantalla es para los gestos (gestures), soportado a partir del SDK 1.6. El multi-touch es otra posibilidad disponible a partir del SDK 2.0. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 19 / 34
20 Pantalla táctil Pantalla táctil II El manejo básico de la pantalla táctil es mediante el método ontouchevent de un clase View. El método ontouchevent devuelve un objeto de tipo MotionEvent. También se puede implementar mediante la interfaz ontouchlistener. Los principales métodos de la clase MotionEvent son: Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 20 / 34
21 Pantalla táctil Pantalla táctil III MotionEvent getaction(): Tipo de acción realizada: ACTION DOWN, ACTION UP, ACTION MOVE, ACTION CANCEL. getx(), gety(): Posición de la pulsación. getdowntime(): Tiempo en milisegundos en que el usuario presionó por primera vez en una cadena de pulsaciones. geteventtime(): Tiempo en milisegundos del evento actual. getpressure(): Estima la presión de la pulsación entre [0, 1]. getsize(): Grosor de la pulsación entre [0, 1]. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 21 / 34
22 Pantalla táctil Ejemplo: Pantalla Táctil I 1 Crear un proyecto llamado Pantalla, cuya actividad principal se llame main.xml. 2 Cambie el layout de la actividad main.xml a un LinearLayout (Vertical). 3 Agregue una etiqueta TextView (label) y un ScrollView (scroll), además de otra etiqueta TextView (labelscroll) dentro del ScrollView. 4 En el método oncreate() de la clase principal (Main.java) haga referencia a la etiqueta label. TextView entrada = (TextView) findviewbyid(r.id.label); Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 22 / 34
23 Pantalla táctil Ejemplo: Pantalla Táctil II 5 Cree una clase (PantallaTactil) que implemente la interfaz OnTouchListener y su método ontouch. class PantallaTactil implements OnTouchListener{ public boolean ontouch(view vista, MotionEvent evento){ TextView salida = (TextView) findviewbyid(r.id.labelscroll); salida.append(evento.tostring()+ \n ); } } 6 En el método oncreate agregue el siguiente código: entrada.setontouchlistener(new PantallaTactil()); Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 23 / 34
24 Sensores Sensores 1 Uso de hilos en Android 2 Eventos de usuario 3 Teclado 4 Pantalla táctil 5 Sensores Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 24 / 34
25 Sensores Sensores I Los sensores son los dispositivos con los que se puede obtener información del mundo exterior (con excepción de la cámara, el micrófono y el GPS). Se pueden manipular de forma homogénea. Aunque es posible emular el comportamiento de los sensores resulta muy laborioso, es mejor contar con algún dispositivo. Se puede acceder a los sensores internos del dispositivo a través de las clases: Sensor, SensorEvent, SensorManager y la interfaz SensorEventListener. Los sensores pueden variar según el dispositivo. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 25 / 34
26 Sensores Sensores II Clase Sensor public float getmaximumrange(): Rango máximo en las unidades del sensor. public String getname(): Nombre del sensor. public float getpower(): Potencia usada por el sensor mientras está en uso. public float getresolution(): Resolución en las unidades del sensor. public int gettype(): Tipo genérico del sensor. public int getversion(): Versión del sensor. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 26 / 34
27 Sensores Sensores III Algunas constantes de la clase Sensor I Acelerómetro (TYPE ACCELEROMETER): Mide la aceleración por gravedad y cambios de movimiento. Campo magnético (TYPE MAGNETIC FIELD): Brújula, detecta campos magnéticos. Giroscopio (TYPE GYROSCOPE): Detecta giros. Orientación (TYPE ORIENTATION): Indica la dirección a la que apunta el dispositivo. Luz ambiental (TYPE LIGHT): Ajusta la iluminación de pantalla. Proximidad (TYPE PROXIMITY): Indica si hay un objeto a menos de 5 cm. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 27 / 34
28 Sensores Sensores IV Algunas constantes de la clase Sensor II Presión atmosférica (TYPE PRESSURE): Altímetro, barómetro. Gravedad (TYPE GRAVITY): Mide la aceleración debida a la gravedad. Acelerómetro lineal (TYPE LINEAR ACCELERATION): Mide las aceleraciones debidas a la gravedad. Vector de rotación (TYPE ROTATION VECTOR): Detecta giros. Temperatura ambiental (TYPE AMBIENT TEMPERATURE): Mide la temperatura del aire. Humedad relativa (TYPE RELATIVE HUMIDITY): Mide el punto de rocío, humedad absoluta y relativa. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 28 / 34
29 Sensores Ejemplo: Sensores disponibles I Antes de utilizar los sensores es necesario conocer los que tiene disponibles el dispositivo. 1 Crear un proyecto llamado Sensores, cuya actividad principal se llame main.xml. 2 Cambie el layout de la actividad main.xml a un LinearLayout (Vertical). 3 Agregue una etiqueta TextView (salida). 4 En el método oncreate() de la clase principal (Main.java) haga referencia a la etiqueta salida y ponga el siguiente código. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 29 / 34
30 Sensores Ejemplo: Sensores disponibles II TextView salida = (TextView) findviewbyid(r.id.salida); SensorManager sensor = (SensorManager)getSystemService(SENSOR SERVICE); List<Sensor> listasensores = sensor.getsensorlist(sensor.type ALL); salida.settext(); for(sensor s: listasensores){ salida.append(s.getname()+ \n ); } 5 Ejecute su aplicación y observe los sensores que posee su dispositivo. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 30 / 34
31 Sensores Ejemplo: Acceso a los datos de los sensores disponibles I En este ejercicio se desplegarán los datos de los sensores disponibles conforme cambien en tiempo real. También se verá la creación de vistas desde código Java. 1 Crear un proyecto llamado SensoresDatos, cuya actividad principal se llame main.xml. 2 Cambie el layout de la actividad main.xml a un LinearLayout (Vertical) y cambie su id a layout. 3 Elimine el TextView que aparece por defecto en el layout principal. 4 En la clase principal Main.java agregue dos variables globales a la clase: Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 31 / 34
32 Sensores Ejemplo: Acceso a los datos de los sensores disponibles II private TextView arregloetiquetas[][]; private List<Sensor> listasensores; 5 Implemente el método onsensorchanged de la interfaz SensorEventListener como se muestra en la siguiente tabla. 6 Observe que el método onsensorchanged pone todo su código dentro de una región crítica, por qué? 7 En el método oncreate agregue el código que le presente el profesor. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 32 / 34
33 Sensores Ejemplo: Acceso a los datos de los sensores disponibles III class EscuchaSensores implements public void onaccuracychanged(sensor sensor, int accuracy) public void onsensorchanged(sensorevent event) { synchronized(this){ int n = 0; for(sensor sensor: listasensores){ if(event.sensor == sensor){ for(int i = 0; i < event.values.length; i++){ arregloetiquetas[n][i].settext(string.valueof(event.values[i])); }} n++;}}} Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 33 / 34
34 Sensores Ejemplo: Acceso a los datos de los sensores disponibles IV 8 Ejecute su aplicación y observe como cambian los valores de los sensores que posee su dispositivo. Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario 34 / 34
Android Manejo de Eventos. Rogelio Ferreira Escutia
Android Manejo de Eventos Rogelio Ferreira Escutia Tipos de Eventos 2 Escuchando los eventos Un escuchador de Eventos (Event Listener) es una interfaz de la clase View que contiene un método callback que
Más detallesDesarrollo de Aplicaciones para Android
Desarrollo de Aplicaciones para Android Sesión 4: Eventos y sensores Desarrollo de Aplicaciones para Android Depto. Ciencia de la Computación e IA Eventos y sensores 1 Puntos a tratar Entrada en dispositivos
Más detallesSensores. JOSE LUIS BERENGUEL GÓMEZ jlberenguel@gmail.com Marzo 2012
Sensores JOSE LUIS BERENGUEL GÓMEZ jlberenguel@gmail.com Marzo 2012 Contenidos Tipos de sensores. Sensores de movimiento Sensores de posición. Sensores ambientales. Framework para manejar los sensores.
Más detallesInterfaz de usuario Layout Vistas Adaptadores Eventos de interacción Estilos y temas
Interfaz de usuario Layout Vistas Adaptadores Eventos de interacción Estilos y temas Interfaz de usuario Layout Vistas Adaptadores Eventos de interacción Estilos y temas Activity [Form] Pantalla que se
Más detallesCursos de orientación profesional
Cursos de orientación profesional ACCIONES COFINANCIADAS CON FONDOS COMUNITARIOS DEL FONDO SOCIAL EUROPEO, A TRAVÉS DEL PROGRAMA OPERATIVO FONDO SOCIAL EUROPEO DE CANARIAS 20072013 CON UN PORCENTAJE DE
Más detallesAnexo. Control de errores
Anexo. Control de errores Tipos de errores Los errores en un programa o algoritmo se pueden clasificar de la siguiente manera Errores de compilación Los errores de compilación no permiten la ejecución
Más detallesInterfaces de usuario [Desarrollo de aplicaciones para Android]
Interfaces de usuario [Desarrollo de aplicaciones para Android] M. en C. Sergio Luis Pérez Pérez UAM CUAJIMALPA, MÉXICO, D. F. Trimestre 14-P Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de Usuario
Más detallesDiseño de interfaces gráficas. JOSE LUIS BERENGUEL GÓMEZ jlberenguel@gmail.com Febrero 2012
Diseño de interfaces gráficas JOSE LUIS BERENGUEL GÓMEZ jlberenguel@gmail.com Febrero 2012 Contenidos Aprenderás a crear interfaces gráficas de usuario a través de ficheros XML y los elementos View y ViewGroup
Más detallesTema 2: Diseño de servicios para móviles
Tema 2: Diseño de servicios para móviles Listas y menús 2013-2014 Depto. Ciencia de la Computación e IA Puntos a tratar Spinners Listas Adaptadores Menús de opciones Menús contextuales 2 Spinner Cuadro
Más detallesEjercicio 4. Manejo de Layouts en Android. Android Con Java. Ejercicio 4. Manejo de Layouts en Android. Curso de Android con Java
Android Con Java Ejercicio 4 Manejo de Layouts en Android Objetivo del Ejercicio El objetivo del ejercicio es entender el manejo de Layout y los Adaptadores en Android. Al finalizar deberemos observar
Más detallesProgramación de Eventos
Programación de Eventos Un evento es un suceso que ocurre dentro del contexto de la ejecución de un programa. Por ejemplo, se presiona un botón, se modifica una caja de texto, se selecciona una opción
Más detallesGuía Rapida Herramienta Análisis de Clima
Guía Rapida Herramienta Análisis de Clima 3 Índice Índice Índice... 3 Herramienta Análisis de Clima... 5 Cómo leer este documento... 5... 6 Ingresando a Herramientas de Análisis... 6 Partes de Herramienta
Más detallesINTRODUCCIÓN. paco@portadaalta.es
INTRODUCCIÓN paco@portadaalta.es Índice Entorno de desarrollo Estructura de un proyecto Android Componentes de una aplicación Android Ejemplos: Mi primera aplicación Divisas 2 actividades Contador de cafés
Más detallesLook!: Framework para Aplicaciones de Realidad Aumentada en Android
Look!: Framework para Aplicaciones de Realidad Aumentada en Android Diseño de aplicaciones con Look! Sergio Bellón Alcarazo Jorge Creixell Rojo Ángel Serrano Laguna En este tutorial se proponen los pasos
Más detallesUnidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones
Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice
Más detallesEjercicio 3. Manejo de la Vista y Eventos en Android Ejercicio 3 Curso de Android con Java Derechos Res Dere e c rvados hos Res Gl e obal rva
Android Con Java Ejercicio 3 Manejo de la Vista y Eventos en Android Objetivo del Ejercicio El objetivo del ejercicio es entender cómo controlar la Vista desde código Java, así como responder a eventos
Más detallesCREACIÓN DE NUEVAS ACTIVIDADES
Objetivos: Mostrar cómo podemos añadir nuevas actividades a nuestra aplicaciones. CREACIÓN DE NUEVAS ACTIVIDADES El concepto de actividad en Android representa una unidad de interacción con el usuario,
Más detallesHola Android. Introducción al desarrollo de aplicaciones para Android
Hola Android. Introducción al desarrollo de aplicaciones para Android Las aplicaciones para el sistema operativo móvil Android son desarrolladas en el lenguaje de programación Java en conjunto con el SDK
Más detallesCarlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas
2 - Introducción al lenguaje Java, identificadores y comentarios. Carlos Montenegro Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 1. Introducción: Java tiene como todos
Más detalleswww.android-spa.com Android Creación de una aplicación sencilla: Forwarding - Página 1 -
Android Creación de una aplicación sencilla: Forwarding - Página 1 - Realización de la aplicación Forwarding en Android Este es un pequeño tutorial con el que se realizará un pequeño programa para Android
Más detallesQUÉ ES UNA CLASE JAVA? ATRIBUTOS (PROPIEDADES O CAMPOS), CONSTRUCTOR Y MÉTODOS. (CU00623B)
APRENDERAPROGRAMAR.COM QUÉ ES UNA CLASE JAVA? ATRIBUTOS (PROPIEDADES O CAMPOS), CONSTRUCTOR Y MÉTODOS. (CU00623B) Sección: Cursos Categoría: Curso Aprender programación Java desde cero Fecha revisión:
Más detallesCentro Asociado Palma de Mallorca. Antonio Rivero Cuesta
Centro Asociado Palma de Mallorca Antonio Rivero Cuesta La Sintaxis de Java I... 5 Tipos de datos... 6 Tipos de datos simples... 7 Operadores... 11 Operadores Aritméticos... 12 Operadores relacionales...
Más detallesNormalmente, los programas son ejecutados de forma secuencial. Único flujo de control
Hilos BUAP Introducción Normalmente, los programas son ejecutados de forma secuencial Único flujo de control Un programa con un único flujo de control, ejecuta sólo una tarea (hilo) Dr. Ivan Olmos 2 Introducción
Más detallesFACULTAD DE INGENIERÍA
NOMBRE DEL PROFESOR: Ing. Héctor Manuel Quej Cosgaya NOMBRE DE LA PRÁCTICA: Estructuras de decisión PRÁCTICA NÚM. [ 5 ] LABORATORIO: MATERIA: UNIDAD: TIEMPO: Centro de Ingeniería Computacional Lenguaje
Más detallesPasos a seguir para crear una aplicación visual en el lenguaje de programación Java con Netbeans IDE.
Pasos a seguir para crear una aplicación visual en el lenguaje de programación Java con Netbeans IDE. Autores: Ing. Maikel Zuñiga Suarez. Reisel González Pérez. Universidad de las Ciencias Informáticas
Más detallesIntroducción a Java LSUB. 30 de enero de 2013 GSYC
Introducción a Java LSUB GSYC 30 de enero de 2013 (cc) 2013 Laboratorio de Sistemas, Algunos derechos reservados. Este trabajo se entrega bajo la licencia Creative Commons Reconocimiento - NoComercial
Más detallesAnexo C. Manual del usuario
Anexo C Manual del usuario 1. Introducción La aplicación requiere tener instalada la máquina virtual de java versión 1.6 o superior (tanto en sistemas operativos Windows como en sistemas operativos Linux).
Más detallesTemas. CopyRight 2013 - emmmnmmma - All rights reserved 2
Tutorial ANDROID Temas 1 - Instalación de Android 2 - Pasos para crear el primer proyecto Android 3 - Captura del clic de un botón 4 - Controles RadioGroup y RadioButton 5 - Control CheckBox 6 - Control
Más detallesPatrones de Diseño. Patrón estructural Composite. Técnicas de Programación - Curso 2007/08
Patrones de Diseño Patrón estructural Composite Técnicas de Programación - Curso 2007/08 Propósito Componer objetos en estructuras arbóreas para representar jerarquías todo-parte. Manipular todos los objetos
Más detallesCURSO INTERMEDIO DE PROGRAMACIÓN EN ANDROID
CURSO INTERMEDIO DE PROGRAMACIÓN EN ANDROID 1. Entorno de desarrollo y primera aplicación 1. El mundo Android 1.1 Android y las versiones 1.2 Personalizaciones del sistema operativo. 1.3 Dispositivos Android
Más detallesGUIA 2: Repaso sobre uso de C#. Funciones, métodos y arreglos.
1 Programación II, Guía 2 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II GUIA 2: Repaso sobre uso de C#. Funciones, métodos y arreglos. Objetivos Utilizar la sintaxis de las funciones
Más detallesModulo 11. Clases y Objetos en Java
El siguiente texto es una traducción no oficial del documento publicado por el grupo JEDI, Introduction to Programming 1, no pretende en ningún momento reemplazar los contenidos generados por este grupo.
Más detallesVariables. Una variable no es más que un nombre simbólico que identifica una dirección de memoria: vs.
Variables Una variable no es más que un nombre simbólico que identifica una dirección de memoria: Suma el contenido de la posición 3001 y la 3002 y lo almacenas en la posición 3003 vs. total = cantidad1
Más detallesLenguaje C [Apuntadores y arreglos]
Lenguaje C [Apuntadores y arreglos] M. en C. Sergio Luis Pérez Pérez UAM CUAJIMALPA, MÉXICO, D. F. Trimestre 14-O Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Lenguaje C 1 / 20 Apuntadores y direcciones
Más detallesCurso de Android con Java
Todos los Derechos Reservados Global Mentoring Experiencia y Conocimiento para tu Vida 1 Una aplicación Android consiste en una serie de componentes poco acoplados y perfectamente estructurados, los cuales
Más detallesProgramación estructurada (Introducción a lenguaje C)
Programación estructurada (Introducción a lenguaje C) M. en C. Sergio Luis Pérez Pérez UAM CUAJIMALPA, MÉXICO, D. F. Trimestre 15-I Sergio Luis Pérez (UAM CUAJIMALPA) Curso de programación estructurada
Más detallesAPLICACIÓN EMAYA MÓDULO INCIDENCIAS PARA DISPOSITIVOS MÓVILES IPHONE
APLICACIÓN EMAYA MÓDULO INCIDENCIAS PARA DISPOSITIVOS MÓVILES IPHONE ÍNDICE 1- INTRODUCCIÓN 2 2- INSTALACIÓN Y DESCARGA 3 3- INICIO 3 3-1- REGISTRO 4 3.2- IDIOMA 5 3.3- INFORMACIÓN 5 4- GESTIÓN DE INCIDENCIAS
Más detallesALMACENAMIENTOS DE DATOS EN ANDROID CON SQLITE
SQLite M.Sc. Reynaldo Zeballos ALMACENAMIENTOS DE DATOS EN ANDROID CON SQLITE En este ejercicio vamos a crear una tabla TELEFONOS para la base de datos GUIATEL. Para lo cual utilizaremos SQLite que viene
Más detallesSESIÓN 5 MANEJO DE BASES DE DATOS SQLITE
SESIÓN 5 MANEJO DE BASES DE DATOS SQLITE Contenidos Resumen...1 Práctica guiada 7: ListaCompra...1 Implementación de la base de datos...2 Actividad principal: ListaCompraActivity...6 Actividad secundaria:
Más detallesMASTER DESARROLLO DE APLICACIONES ANDROID
MASTER DESARROLLO DE APLICACIONES ANDROID TEMARIO MODULO I La plataforma Android Origen Google Play Creación de una cuenta de desarrollador Publicación de una aplicación Seguimiento y actualización de
Más detallesINTERFAZ GRÁFICO DE USUARIO
Programación JAVA INTERFAZ GRÁFICO DE USUARIO 3 - Referencia Bibliográfica Autor Adolfo Aladró García Publicado en la revista Solo Programadores num. 119 Ejemplos copiados del libro Java 2 - Curso de Programación
Más detallesDefinición de Memoria
Arquitectura de Ordenadores Representación de Datos en Memoria Abelardo Pardo abel@it.uc3m.es Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Definición de Memoria DRM-1 La memoria
Más detallesJava Avanzado Facultad de Ingeniería. Escuela de computación.
2 Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 5 3 Introducción Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el desarrollo de sus prácticas
Más detallesManejo de Filas, Columnas, Celdas y Rangos
Manejo de Filas, Columnas, Celdas y Rangos Selección de filas Selección de columnas Selección de celdas y rangos Ingresar, editar y eliminar datos Tipos de datos Agregar nombres a celdas y rangos Insertar
Más detalles1. INTRODUCCIÓN. 1.1. Acerca de este libro. 1.2. A quién va dirigido
1. INTRODUCCIÓN 1.1. Acerca de este libro Aunque el sistema operativo Android tiene apenas unos años de vida, la librería Java de Android consiste ya en más de 150 paquetes (APIs), que contienen miles
Más detallesRelación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática
Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso 2013-2014. 1º Grado en Informática Práctica 2: Memoria dinámica y Bibliotecas Objetivos Practicar conceptos
Más detallesLa funcionalidad básica es la del proyecto 1 (Pacman III). Sobre ella reemplazamos la interfaz de usuario para adaptarla al nuevo entorno
Pacman en android 14.5.2015 1 Objetivos Pasar el juego del proyecto 1 (Pacman III) a una plataforma Android. movimiento del jugador dirigido por el dedo programación de menús contextuales gestión de threads
Más detallesAplicación Android de Asistencia al Caminante
Aplicación Android de Asistencia al Caminante Enrique R. Delgado Garrido Almacenamiento de datos en Android. Documento: Índice de contenido.1 A2.- Almacenamiento de datos en Android.2 A.2.1 - Preferences2
Más detallesManual de Usuario. HISMINSA Sistema de Gestión Asistencial (Versión Offline para XP) Ministerio de Salud del Perú Todos los Derechos Reservados
Manual de Usuario HISMINSA Sistema de Gestión Asistencial (Versión Offline para XP) Ministerio de Salud del Perú 2015 - Todos los Derechos Reservados Introducción El Ministerio de Salud del Perú a través
Más detallesComponentes básicos de Android
Componentes básicos de Android Curso Aplicación de Android en el desarrollo de sistemas de Inteligencia Ambiental y Robótica Cloud Incubator Hub Nieves Pavón Pulido 23 de enero de 2013 Componentes básicos
Más detallesLa sintaxis básica para definir una clase es la que a continuación se muestra:
DEFINICIÓN DE CLASES Y OBJETOS EN C# Sintaxis de definición de clases La sintaxis básica para definir una clase es la que a continuación se muestra: class nombreclase miembros De este modo se definiría
Más detallesojovoz Una plataforma de código abierto para la creación de memorias comunitarias. Manual del usuario
ojovoz Una plataforma de código abierto para la creación de memorias comunitarias. http://ojovoz.net Manual del usuario 1. CÓMO INSTALAR OJOVOZ. 1. ojovoz funciona en la mayoría de teléfonos con sistema
Más detallesEscala San Martín. InstruccIones para la aplicación InformátIca. Evaluación de la Calidad de Vida de Personas con Discapacidades Significativas
Escala San Martín Evaluación de la Calidad de Vida de Personas con Discapacidades Significativas InstruccIones para la aplicación InformátIca Guía rápida INICO - FOSM 2014 INFORMACIÓN GENERAL La presente
Más detallesTópicos Avanzados de Programación (TAP3501)
DuocUC Tópicos Avanzados de Programación (TAP3501) Ariel Alexis Fierro Sáez afierrosaez@gmail.com Eventos En evento es una acción iniciada por el usuario. Ejemplo de eventos son: presionar un botón, cambiar
Más detallesConcurrencia en Android LSUB, GYSC, URJC
Concurrencia en Android LSUB, GYSC, URJC Repaso de concurrencia en Java Crear un thread Instanciar un Thread, con el método run sobreescrito Intanciar un objeto que cumpla el interfaz Runnable y pasárselo
Más detallesInstructivo Configuración de Máquinas Fiscales
Instructivo Configuración de Máquinas Fiscales Estimado usuario le facilitamos este instructivo para guiarlo a través de la configuración de su máquina fiscal. Al momento que decida configurar su máquina
Más detallesPROGRAMACION ORIENTADA A OBJETOS EN C++
PROGRAMACION ORIENTADA A OBJETOS EN C++ 1- INTRODUCCIÓN El lenguaje C++ representa el resultado de los esfuerzos realizados para proporcionar las ventajas de la programación Orientada a Objetos a un lenguaje
Más detallesPRACTICAS DE ANDROID 12 - Lanzar un segundo "Activity" y pasar parámetros Problema:
PRACTICAS DE ANDROID 12 - Lanzar un segundo "Activity" y pasar parámetros Hemos visto en el concepto anterior que un programa puede tener más de una ventana representando cada ventana con una clase que
Más detallesProgramación Android. Alejandro Alcalde. elbauldelprogramador.com
Programación Android Alejandro Alcalde elbauldelprogramador.com Copyright c 2013 Alejandro Alcalde P L A TEX. Programación Android por Alejandro Alcalde se encuentra bajo una Licencia Creative Commons
Más detallesInterfaces de usuario [Android: Vistas y Gestores de disposición]
Interfaces de usuario [Android: Vistas y Gestores de disposición] M. en C. Sergio Luis Pérez Pérez UAM CUAJIMALPA, MÉXICO, D. F. Trimestre 14-P Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Interfaces de
Más detallesPráctica 2: Análisis de sensibilidad e Interpretación Gráfica
Práctica 2: Análisis de sensibilidad e Interpretación Gráfica a) Ejercicios Resueltos Modelización y resolución del Ejercicio 5: (Del Conjunto de Problemas 4.5B del libro Investigación de Operaciones,
Más detallesNOTAS TÉCNICAS SOBRE EL SIT: Comisiones Comerciales
NOTAS TÉCNICAS SOBRE EL SIT: Comisiones Comerciales Procedimiento Estándar...2 Alta de Comerciales o Agentes... 2 Comercial por defecto... 2...3 Introducción... 3 Pasos previos... 3 Relaciones de Mandos...
Más detallesContabilidad Electrónica Paso a Paso con Aspel-COI 7.0
Contabilidad Electrónica Paso a Paso con Aspel-COI 7.0 Implementar el manejo de la contabilidad electrónica es muy sencillo, sigue estos pasos y te encontrarás cumpliendo con las ultimas disposiciones
Más detallesLABORATORIO ARQUITECTURAS SOFTWARE DE VARIOS NIVELES EN JAVA (I)
LABORATORIO ARQUITECTURAS SOFTWARE DE VARIOS NIVELES EN JAVA (I) SEPARACIÓN DEL NIVEL DE PRESENTACIÓN Y LÓGICA DE NEGOCIO MEDIANTE EL USO DE INTERFACES JAVA 1. OBJETIVO Los objetivos de este laboratorio
Más detallesPrototipos de prueba de acelerómetro y conexión Bluetooth para terminales Android.
ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA DE TELECOMUNICACIÓN UNIVERSIDAD POLITÉCNICA DE CARTAGENA. Proyecto Fin de Carrera Prototipos de prueba de acelerómetro y conexión Bluetooth para terminales Android.
Más detallesElementos léxicos del lenguaje de programación Java
Elementos léxicos del lenguaje de programación Java Elementos léxicos del lenguaje de programación Java Palabras reservadas Identificadores Literales Operadores Delimitadores Comentarios Apéndices Operadores
Más detallesAndroid Touch. En esta misma clase modificamos también el método avanza() de tal manera que ahora el elefante pueda desplazarse también en el eje y.
Android Touch En este tutorial aprenderemos a utilizar la pantalla táctil de los dispositivos para sacar ventaja de ello en nuestras aplicaciones. Para este tutorial tomaremos como base el tutorial anterior,
Más detallesMANUAL DE USUARIO. Sistema CLASS Profesores
MANUAL DE USUARIO Sistema CLASS Profesores CLASS PROFESORES LOGIN DE ENTRADA Cuando el profesor ingresa al siguiente link www.classgestion.com\uca\uvirtual le aparece una pantalla (ver figura 1.0) en la
Más detallesPROGRAMA DE MATERIA DATOS DE IDENTIFICACIÓN DESCRIPCIÓN GENERAL OBJETIVO (S) GENERAL (ES) OPTATIVA PROFESIONALIZANTE II
DATOS DE IDENTIFICACIÓN CENTRO ACADÉMICO: DEPARTAMENTO ACADÉMICO: PROGRAMA EDUCATIVO: OPTATIVA PROFESIONALIZANTE II CIENCIAS BASICAS DEPARTAMENTO DE SISTEMAS DE INFORMACION LIC. EN TECNOLOGIAS DE INFORMACION
Más detallesLABORATORIO ARQUITECTURAS SOFTWARE DE VARIOS NIVELES EN JAVA (I)
LABORATORIO ARQUITECTURAS SOFTWARE DE VARIOS NIVELES EN JAVA (I) SEPARACIÓN DEL NIVEL DE PRESENTACIÓN Y LÓGICA DE NEGOCIO MEDIANTE EL USO DE INTERFACES JAVA 1. OBJETIVO Los objetivos de este laboratorio
Más detallesGuía de inicio rápido de la aplicación Novell Filr 2.0 Web
Guía de inicio rápido de la aplicación Novell Filr 2.0 Web Febrero de 2016 Inicio rápido Este documento le ayudará a familiarizarse con Novell Filr y a entender rápidamente algunos de los conceptos y tareas
Más detallesClases en Java. Declaración de clases en Java 02/09/16. Ing. Roberto Martínez Román - public class Alumno { private int matricula;
Clases en Java ESCRIBIENDO CLASES rmroman@itesm.mx Declaración de clases en Java public class Alumno private int matricula; public void mostrardatos() System.out.println("Matrícula: " + matricula); Firma
Más detallesClase adicional 2. Estructuras básicas de control. Temas
Clase adicional 2 Temas Estructuras de control Sentencia condicional Iteración Clases Definir una clase Crear una instancia de una clase Campos estáticos Problemas de la clase adicional Problema de diseño
Más detallesExtensión K2B proyectos para Smart Devices
Extensión K2B proyectos para Smart Devices Modelo de Casos de Uso Versión 1.2 27/08/2012 Historia de revisiones Fecha Versión Autor 25/08/2012 1.0 Creación del Documento 25/08/2012 1.1 Ajustes a los casos
Más detallesUnidad 5. Interfaz de Usuario
Unidad 5. Interfaz de Usuario José A. Montenegro monte@lcc.uma.es 9 de mayo de 2013 José A Montenegro (monte@lcc.uma.es) Programación de dispositivos móviles. CEP-Málaga 1/77 Índice 1 Explorando Interfaz
Más detallesGrandes Compras. Mayo 2013
Grandes Compras Mayo 2013 INGRESO A MERCADO PUBLICO El usuario debe ingresar a www.mercadopublico.cl a través de la página principal, completando su nombre de usuario y contraseña. Una vez que el usuario
Más detallesEl pipeline de visualización es el conjunto de
Sistemas de Visualización Pipeline de visualización 3D Definición del modelo geométrico Transformaciones geométricas Transformaciones de visualización Volumen de visualización Proyecciones Pipeline de
Más detallesTema 4. Excepciones en Java
Programación en Java Tema 4. Excepciones en Java Luis Rodríguez Baena Facultad de Informática Excepciones (I) Permiten la captura de errores en tiempo de ejecución. El control de excepciones permite extraer
Más detallesTema 4: Corrección y Robustez en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle
Tema 4: Corrección y Robustez en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle Contenido Asertos en C++ Mecanismo de excepciones: Declaración de excepciones Lanzar excepciones
Más detallesDesde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.
Tipos de Datos Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Entrada de datos Procesamientos de datos Salida de resultados Los
Más detallesUniversidad de Carabobo Facultad Experimental de Ciencias y Tecnología Departamento de Computación Informe final de pasantía
Universidad de Carabobo Facultad Experimental de Ciencias y Tecnología Departamento de Computación Informe final de pasantía Desarrollo de Componentes de software para el procesamiento de servicios web
Más detallesANDROID BÁSICO - E-LEARNING - EN LÍNEA
IMECAF México, S.C. Instituto Mexicano de Contabilidad, Administración y Finanzas Nombre del Curso ANDROID BÁSICO - E-LEARNING - EN LÍNEA Objetivo Los dispositivos móviles nos acompañan en el día a día
Más detallesIntroducción a BMP085 Versión 1.0
1. [ BMP085 - Barómetro ] El kit incluye el sensor de presión y temperatura BMP085 de la marca Bosch, el mismo es normalmente utilizado en plataformas electrónicas como Arduino, por lo que fácilmente se
Más detallesEFECTOS TRIDIMENSIONALES
EFECTOS TRIDIMENSIONALES Para crear líneas concéntricas hacia el interior o el exterior de un objeto, es posible aplicar una silueta. CorelDRAW también permite ajustar el número de líneas de silueta y
Más detallesSYNERGY - KIOSKO TERMINAL DE MARCAJE BASADO EN LINUX
SYNERGY - KIOSKO TERMINAL DE MARCAJE BASADO EN LINUX Pantalla en Color, Monitor en Tiempo-Real, Terminal Multimedia. Visualización gráfica en color Alimentación sobre Ethernet (POE) USB 1.1 (flash) Altavoz
Más detallesProceso de registro de una sola vez Registro de cuenta My Globality
Manual del usuario Su registro en My Globality My Globality, disponible a través de www.globality-health.com, le proporciona acceso personal directo y seguro a todo tipo de información fundamental, además
Más detallesLos nombres y marcas comerciales mencionados en este manual son propiedad de sus respectivos autores o fabricantes.
Para aportes y sugerencias puede escribir al correo del autor: thenewinquirer01@gmail.com Los nombres y marcas comerciales mencionados en este manual son propiedad de sus respectivos autores o fabricantes.
Más detallesTema: Introducción al IDE de Microsoft Visual C#.
Tema: Introducción al IDE de Microsoft Visual C#. Objetivos: El propósito de este tema es que el alumno se familiarice con el entorno de desarrollo de Visual C# Express mientras crea el formulario más
Más detalleshttp://www.droidlife.com/#47
Oct 2003 Fundación de Android, Inc. en Palo Alto, CA. 16 Ago, 2005 Android, Inc. es adquirida por Google. 5 Nov, 2007 Se anuncia el Open Handset Alliance (OHA), una alianza formada por 34 compañías líderes
Más detallesPRÁCTICA DE LABORATORIO 4 Programación Orientada a Objetos
ESCUELA DE INGENIERÍA DE SISTEMAS DEPARTAMENTO DE COMPUTACIÓN PROGRAMACIÓN 2 PRÁCTICA DE LABORATORIO 4 Programación Orientada a Objetos Contenido Introducción...1 Objeto...2 Atributo...2 Métodos...2 Clase...3
Más detallesLista de acrónimos... xv. Cómo leer este libro?... xvii
Índice general Lista de acrónimos... xv Cómo leer este libro?... xvii CAPÍTULO 1. Diseño avanzado de interfaces de usuario... 19 1.2.1. Insertar fragments desde XML... 27 1.2.2. Insertar fragments desde
Más detallesAgenda. Contenedores y componentes
Agenda Tipos de objetos y clases de la GUI Guía detallada para crear una interfaz gráfica de usuario Guía detallada para la gestión de eventos Problema 1 del boletín 5 Problema 2 del boletín 5 Contenedores
Más detallesGUIA DE LABORATORIO N 1
Objetivos: UNIVERSIDAD DE EL SALVADOR FACULTAD DE INGENIERIA Y ARQUITECTURA ESCUELA DE INGENIERIA DE SISTEMAS INFORMATICOS PROGRAMACION PARA DISPOSITIVOS MOVILES PDM115 Ciclo I-2015 GUIA DE LABORATORIO
Más detallesTermostato programable vía Wi-Fi Sensi TM GUÍA DE PROGRAMACIÓN. Versión : March el año Emerson Electric Co. Todos los derechos reservados.
Termostato programable vía Wi-Fi Sensi TM GUÍA DE PROGRAMACIÓN Versión : March el año 2016 2016 Emerson Electric Co. Todos los derechos reservados. Contenido GUÍA DE PROGRAMACIÓN Acceso a los programas
Más detallesPráctica 3. Paso de parámetros entre subrutinas. 3. Consideraciones sobre el paso de parámetros
Práctica 3. Paso de parámetros entre subrutinas 1. Objetivo de la práctica El objetivo de esta práctica es que el estudiante se familiarice con la programación en ensamblador y el convenio de paso de parámetros
Más detallesATRIBUTOS DE LOS FICHEROS EN LINUX
PRÁCTICA 2 ATRIBUTOS DE LOS FICHEROS EN LINUX Objetivos Noción de inodo. Enlaces simbólicos y no simbólicos. Descripción de los atributos de un fichero. Permisos de un fichero. 1. Noción de inodo A cada
Más detallesMicrosoft Project 2013
Microsoft Project 2013 SALOMÓN CCANCE Project 2013 Salomón Ccance www.ccance.net CCANCE WEBSITE ANEXO 2. MANEJO DE VISTAS Y TABLAS. 2.1. ELEMENTOS DE VISUALIZACIÓN DE MICROSOFT OFFICE PROJECT PROFESSIONAL
Más detallesTest : Conteste exclusivamente en una HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
SISTEMAS INFORMÁTICOS I Junio 2003 INGENIERÍA EN INFORMÁTICA - Código Carrera 55 - Código Asignatura 077 Tipo de Examen: A NO SE PERMITE EL USO DE NINGÚN MATERIAL Tiempo: 2 horas Apellidos: Nombre: DNI:
Más detallesAndroid 2.3 Tablet Manual de Usuario
Contenido. Contenido....1 2. Contenido de la caja...2 3. Perspectiva del producto...3 4. Encendido y apagado...4 Hibernar: Pulsar el botón de encendido para que la tableta se ponga en modo de hibernación
Más detallesManual. Ingreso Demandas y Escritos Oficina Judicial Virtual
Manual Ingreso Demandas y Escritos Oficina Judicial Virtual Versión 1 18.06.2016 Índice 1. Introducción... 3 2. Ingreso Oficina Judicial Virtual:... 4 3. Acceso con Clave única:... 4 4. Ingreso Demandas
Más detalles